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/
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
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
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
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
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
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
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
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.
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
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
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
Links zu Handbüchern etc in DMS und CMS anpassen var/www/locale/de-AT/dms_link.php
Anpassung der Signaturen in Mails unter var/www/locale/de-AT/mail.php
Zum Anpassen der Anwesenheitslisten etc: Kopieren des Ordners include/tw und Anpassung in Config damit es bei einem Update keine Probleme gibt
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>
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');