Inhaltsverzeichnis

zurück zur Übersicht

Code aus Versionsverwaltung auschecken

mkdir /home/user/fhcomplete
cd /home/user/fhcomplete
git clone https://github.com/FH-Complete/Core.git .

Kopieren auf den Webserver

cp -r /home/user/fhcomplete /var/www/

Composer starten

Um Drittanbieter-Module nachzuladen muss Composer verwendet werden. Dazu muss Composer zuerst installiert werden (siehe https://getcomposer.org/download/) Danach können die Module nachgeladen werden:

cd /var/www/
composer install

Konfigurationsdateien anpassen

Kopieren der Default Konfiguration

cd config
cp cis.config-default.inc.php cis.config.inc.php
cp vilesci.config-default.inc.php vilesci.config.inc.php
cp wawi.config-default.inc.php wawi.config.inc.php
cp system.config-default.inc.php system.config.inc.php

Anpassen der Pfade und Konfigurationsparameter in den einzelnen Konfigurationsdateien

Ordner einrichten und Schreibrechte setzen

mkdir /var/fhcomplete
mkdir /var/fhcomplete/log
mkdir /var/fhcomplete/documents
mkdir /var/fhcomplete/documents/benotungstool
mkdir /var/fhcomplete/documents/paabgabe
mkdir /var/fhcomplete/documents/dms
mkdir /var/fhcomplete/documents/import
chown -R www-data:www-data /var/fhcomplete/
addgroup dms
usermod -a -G dms www-data

NFS Mount

Falls FHComplete auf 2 getrennten Webservern verwaltet wird, sollte das Verzeichnis /var/fhcomplete/documents/ auf dem 2. Webserver gemountet werden damit das selbe Verzeichnis verwendet wird. Dazu sind folgende Schritte nötig:
1. Webserver (Server auf dem die Daten liegen):

apt-get install nfs-kernel-server

In der Datei /etc/exports folgenden Eintrag hinzufügen (192.168.0.2 ist die IP des Client-Webservers):

/var/fhcomplete/documents/ 192.168.0.2(sync,rw,no_root_squash)

Dienst neu starten

/etc/init.d/nfs-kernel-server restart

2. Webserver:

apt-get install nfs-common

In der Datei /etc/fstab folgenden Eintrag hinzufügen (192.168.0.1 ist die IP des Server-Webservers):

192.168.0.1:/var/fhcomplete/documents   /var/fhcomplete/documents   nfs   defaults 0 0

Die Freigaben des Servers können mit folgendem Befehl angezeigt werden:

showmount -e 192.168.0.1

.htaccess Dateien anlegen

Derzeit wird die Authentifizierung der Benutzer großteils über HTTP Basic Authentifizierung durchgeführt. Dazu muss bei der Installation in den folgenden Ordnern ein .htaccess File angelegt werden:

/cis/private
/content
/include/tw
/system
/vilesci

htaccess für OpenLDAP

AuthBasicProvider ldap
AuthName "FHComplete"
AuthType Basic
AuthLDAPURL "ldap://ldap.example.com:389/ou=People,dc=example,dc=com?uid?one?objectclass=posixAccount"
AuthLDAPGroupAttributeIsDN Off
AuthLDAPGroupAttribute memberuid
require valid-user

htaccess für Active Directory

AuthBasicProvider ldap
AuthType Basic
AuthName "FHComplete"
AuthLDAPURL ldap://ldap.example.com/dc=academic,dc=local?sAMAccountName?sub
AuthLDAPBindDN "CN=administrator,OU=Users,DC=academic,DC=local"
AuthLDAPBindPassword "passwort"
require valid-user

RDF Verzeichnis einrichten

Das RDF Verzeichnis muss auch über .htaccess geschützt sein. Es muss jedoch eingestellt werden, dass der Server selbst sich für dieses Verzeichnis nicht authentifizieren muss.

Apache < 2.2

Bei Apache kleiner Version 2.2 muss das über die Datei /etc/apache2/sites-available/default eingestellt werden

AllowOverride AuthConfig
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from 192.168.2.1
AuthName "FH Complete"
AuthType Basic
AuthBasicProvider ldap
AuthLDAPURL ldap://ldap.example.com/ou=People,dc=example,dc=com?uid?one?objectclass=posixAccount
AuthLDAPGroupAttributeIsDN Off
AuthLDAPGroupAttribute memberuid
require user foo
...
satisfy any
Apache >= 2.2

Ab Apache Version 2.2 kann dies über ein .htaccess File erledigt werden, welches ins RDF Verzeichnis kopiert wird.

Order deny,allow
Deny from all
Allow from 192.168.2.1
AuthBasicProvider ldap
AuthName "FH Complete"
AuthType Basic
AuthLDAPURL "ldap://ldap.example.com:389/ou=People,dc=example,dc=com?uid?one?objectclass=posixAccount"
AuthLDAPGroupAttributeIsDN Off
AuthLDAPGroupAttribute memberuid
require user foo
...
satisfy any

Caldav Redirect

Für die automatische Auflösung der Caldav URL kann folgender Eintrag in die Apache Config hinzugefügt werden:

Redirect permanent /.well-known/caldav /webdav/lvplan.php/

Damit ist es möglich die Caldav URL lediglich mit der Angabe der URL ohne Pfad einzubinden.

Es müssen einige Symbolische Links angelegt werden damit die Applikation ordnungs- gemäß funktioniert:

cd /var/www/wawi
ln -s ../content/pdfExport.php pdfExport.php

cd /var/www/webdav
ln -s ../cis/private/lvplan/stpl_kalender.php google.php

Content Einrichtung

Links zu Handbüchern etc in DMS und CMS anpassen var/www/locale/de-AT/dms_link.php

Mail Signaturen anpassen

Anpassung der Signaturen in Mails unter var/www/locale/de-AT/mail.php

include/tw

Zum Anpassen der Anwesenheitslisten etc: Kopieren des Ordners include/tw und Anpassung in Config damit es bei einem Update keine Probleme gibt

Hinweise

HTACCESS

Damit die htaccess Files funktionieren muss zuerst das LDAP Modul im Apache aktiviert werden.

cd /etc/apache2/mods-enabled/
ln -s ../mods-available/authnz_ldap.load
ln -s ../mods-available/ldap.load

zusätzlich muss unter /etc/apache2/sites-enabled/000-default das überschreiben der Einstellungen aktiviert werden:

  <Directory /var/www/>
    Options Indexes FollowSymLinks MultiViews
    # AllowOverride None muss auf "AuthConfig Limit" gesetzt werden
    AllowOverride AuthConfig Limit
    Order allow,deny
   allow from all
  </Directory>

Umlautprobleme

Falls Probleme mit Umlauten auftreten kann es sein, dass die Locale nicht korrekt gesetzt ist. Die unterstützten Locales des Systems kann mit folgenden Befehl angezeigt werden:

locale -a

Diese muss dann im Config eingestellt werden:

setlocale (LC_ALL, 'de_AT.utf8');