Schritte auf dieser Seite
1. Installationspaket herunterladen
2. Archiv entpacken und Rechte setzen
3. Webserver anpassen
4. Testen der Installation
5. Datenbank initialisieren
6. ConfTool-Basiskonfiguration
7. Seitenkopf und -fuß anpassen
Detaillierte Installationsanleitung
Diese Seite beschreibt die manuelle Installation von ConfTool. Je nach Server-Zugang gibt es zwei Varianten:
- Wenn Sie für den von Ihnen betriebenen Server über Administratoren-Rechte (Root-Rechte) verfügen, folgen Sie bitte der unten stehenden Anleitung. Wir empfehlen diese Methode für die manuelle Installation.
- Wenn Sie nur Zugriff auf einen Shared Server haben, lesen Sie bitte die Installation von ConfTool auf einem Shared Web Server.
Tipp: Der einfachste und schnellste Weg, ConfTool zu installieren, ist unser Installer – siehe Installation mit dem Installer. Die hier beschriebene manuelle Installation richtet sich an Nutzer, die mehr Kontrolle über das Setup benötigen.
Installation von ConfTool auf einem Server mit Root-Rechten
Im Folgenden setzen wir eine funktionierende Web-Server-Installation mit PHP-Modul sowie MySQL- oder MariaDB-Datenbank voraus. Die entsprechenden Informationen sind leicht im Internet zu finden. Als Startpaket können wir XAMPP empfehlen, das bereits alle Module zusammen enthält. Achten Sie jedoch darauf, dass Sie für den öffentlichen Einsatz von XAMPP die sehr strengen Sicherheitseinstellungen einhalten. Falls Sie nur Zugriff auf einen gehosteten Web-Server ohne Administratoren-Rechte haben, muss das vom Provider angebotene Hosting-Paket die Anforderungen des ConfTool-Systems erfüllen.
1. Installationspaket herunterladen
Bitte kontaktieren Sie uns, wenn Sie eine Lizenz beantragen möchten. Nach der Freigabe Ihrer Anfrage erhalten Sie von ConfTool einen Download-Link. Laden Sie das Archiv (ZIP-Datei) in ein lokales Verzeichnis auf Ihrer Festplatte herunter.
2. Archiv entpacken und Rechte setzen
Erstellen Sie ein Verzeichnis, in dem Sie das Tool installieren möchten, zum Beispiel /usr/local/conftool/ oder /home/conftool/. Eine weitere Möglichkeit unter Unix besteht darin, einen eigenen Benutzer für ConfTool einzurichten und für die Installation ~/conftool/ zu verwenden.
Gehen Sie nun in das entsprechende Verzeichnis und entpacken Sie dort das Archiv, das die Dateien des Tools enthält, mit tar:
tar xvzf conftool-x.y.tgz
Unter Windows verwenden Sie bitte WinZip, WinRAR, 7-Zip oder ein ähnliches Werkzeug. Als Verzeichnis bietet sich z. B. C:\conftool\ an.
Es werden dabei sieben Unterverzeichnisse erzeugt:
install/ enthält Installations-Hinweise und Skripte
etc/ enthält Konfigurationsdateien
uploads/ wird zur Speicherung von Beiträgen verwendet
htdocs/ enthält über den Browser zugängliche Dateien
lib/ enthält die Bibliotheken des ConfTools
classes/ enthält die Klassen des ConfTools
pages/ enthält die Webseiten
Geben Sie dem Webserver bitte volle Schreibrechte auf das Verzeichnis uploads/, damit er dort die von Benutzern übertragenen Dokumente ablegen kann. Läuft der Webserver (httpd) z. B. unter dem Benutzernamen nobody, führen Sie folgende Befehle aus:
chown nobody uploads/
chmod u+rwx uploads/
Wenn Sie keine Root-Rechte haben, verwenden Sie stattdessen chmod a+rwx uploads/. Außerdem benötigt der Webserver auf alle übrigen Verzeichnisse (bis auf install/) Leseberechtigung.
3. Webserver anpassen
Passen Sie die Konfiguration Ihres Webservers so an, dass das Verzeichnis htdocs/ direkt über den Webbrowser erreichbar ist. Fügen Sie außerdem das Verzeichnis etc/ dem PHP-Suchpfad (include_path) hinzu.
Für den Apache-Server setzen die folgenden Anweisungen in der Datei httpd.conf die benötigten Einstellungen (die Datei kann beispielsweise unter /etc/apache2/httpd.conf liegen, dies hängt aber von Ihrer Server-Installation ab):
Alias /conftool "/home/conftool/htdocs/"
<Directory "/home/conftool/htdocs">
Require all granted
Options Includes FollowSymLinks
DirectoryIndex index.php
php_value include_path ".:/home/conftool/etc"
AllowOverride All
# Die folgenden PHP-Parameter können hier oder - bevorzugt - in der php.ini gesetzt werden.
# 15 Minuten reichen in der Regel - sonst werden Funktionen wie Bulk-Mails evtl. durch ein Timeout abgebrochen.
php_value max_execution_time 900
</Directory>
Hinweis: Die php_value-Direktiven funktionieren nur, wenn PHP als Apache-Modul (mod_php) läuft. Wenn Sie PHP über PHP-FPM oder als CGI betreiben, setzen Sie diese Werte stattdessen in der php.ini, in der FPM-Pool-Konfiguration oder in einer .user.ini-Datei.
Unter Windows heißt es bei Ihnen C:/conftool/... statt /home/conftool/..., z. B.:
Alias /conftool "C:/conftool/htdocs/"
<Directory "C:/conftool/htdocs/">
Require all granted
Options Includes FollowSymLinks
DirectoryIndex index.php
php_value include_path ".;C:/conftool/etc/"
(... siehe oben ...)
</Directory>
Schließlich muss der Webserver alle Dateien mit der Endung .php an den PHP-Interpreter übergeben, bevor er sie an den Browser ausliefert. Mit mod_php können Sie dazu folgende Zeile in die httpd.conf aufnehmen, falls sie noch nicht vorhanden ist:
AddType application/x-httpd-php .php
Wir empfehlen dringend, den Zugriff auf Backup-Dateien wie *.bak, *.BAK und *~ zu sperren (siehe die Seite Security Hints).
Außerdem ist es sinnvoll, die Standard-PHP-Konfiguration anzupassen, wenn beim Upload der Beiträge auch größere Dateien erlaubt sein sollen. Der Standardwert ist je nach PHP-Version unterschiedlich, liegt aber meist bei etwa 2 MB. Die relevanten Parameter in der php.ini (meist unter /usr/local/lib/php.ini, /etc/php.ini oder C:\windows\php.ini) sind:
upload_max_filesize 11M
post_max_size 12M
memory_limit 32M
max_execution_time 900
session.gc_maxlifetime 18000
Diese Einstellungen erlauben Uploads von maximal ca. 10 MB, 15 Minuten Laufzeit pro Einzelausführung und erhöhen das gesamte Session-Timeout auf fünf Stunden. Achtung: Diese Werte können für gewöhnlich nicht lokal (in der .htaccess oder settings.php) wirksam hochgesetzt werden, auch wenn es zunächst so scheint.
4. Testen der Installation
Nach dem Neustart des Apache-Servers sollten Sie testen, ob die Einstellungen erfolgreich waren. Bitte geben Sie hierzu folgende Adresse im Browser ein:
www.yourdomain.org/conftool/info.php
Wichtige Hinweise:
• Aus Sicherheitsgründen wird die Datei htdocs/info.php als info.ph_ ausgeliefert. Benennen Sie sie für Ihre Tests einfach in info.php um.
• Bitte löschen Sie die Datei info.php nach Abschluss der Installation aus Sicherheitsgründen wieder.
• www.yourdomain.org ist der Domain-Name Ihres Web-Servers und conftool ist der Directory-Alias, den Sie in der httpd.conf angegeben haben.
Sie sollten eine Übersichtsseite erhalten, anhand der Sie erkennen können, ob die Konfiguration erfolgreich war. Sollten einige PHP-Parameter nicht korrekt gesetzt sein (etwa weil Sie keinen Zugriff auf die php.ini haben), können Sie auch versuchen, diese in den Dateien htdocs/.htaccess und htdocs/settings.php einzustellen.
5. Datenbank initialisieren
Für ConfTool werden eine Datenbank sowie ein Datenbank-Benutzer mit allen Rechten für diese Datenbank benötigt. In der weiteren Beschreibung gehen wir davon aus, dass der Benutzername confuser und der Name der Datenbank conference lautet. Sie können diese Namen ändern, müssen dann aber das Installations-Skript für die Datenbank entsprechend anpassen.
Die folgende Beschreibung bezieht sich auf ein MySQL-/MariaDB-Datenbanksystem. Zum Anlegen der Datenbank werden in der Regel Administratoren-Rechte für das Datenbank-System benötigt.
Erzeugen Sie zuerst die neue Datenbank und legen Sie einen neuen Benutzer mit allen Rechten für diese Datenbank an. Wir gehen davon aus, dass Webserver und Datenbank auf demselben System laufen, sodass der Zugriff von localhost aus gewährt wird. Läuft der Webserver auf einem anderen Rechner als die Datenbank, geben Sie statt localhost die IP-Adresse des Webservers an. Wählen Sie bitte ein geeignetes Passwort. Die entsprechenden Kommandos finden Sie in der Datei install/createDBUser.sql. Nach dem Anpassen dieser Datei übergeben Sie die Befehle folgendermaßen an die Datenbank:
mysql -u root -p < install/createDBUser.sql
(Sie werden nach dem Passwort des Root-Users der Datenbank gefragt.) Anschließend erzeugen Sie mit dem Initialisierungs-Skript die Datenbanktabellen (Sie müssen das neue Passwort eingeben):
mysql conference -u confuser -pconfpass < install/initdb.sql
Nun fügen Sie die Standarddaten in die Datenbank ein:
mysql conference -u confuser -pconfpass < install/defaultdata.sql
Stellen Sie sicher, dass alle Abfragen ohne Fehlermeldung ausgeführt werden. Die Datenbank ist damit fertig eingerichtet.
Zeichenkodierung: Bitte stellen Sie sicher, dass die Datenbank den Zeichensatz utf8mb4 und eine passende Kollation verwendet. Details finden Sie im Abschnitt zur Zeichenkodierung in unserer Technical FAQ.
6. ConfTool-Basiskonfiguration
Der nächste Schritt ist die Konfiguration von ConfTool selbst, um es an Ihre Gegebenheiten anzupassen. Alle Einstellungen werden in der Datei etc/conftool.conf.php vorgenommen und sind dort gut dokumentiert.
Hier tragen Sie die Installationspfade des ConfTool-Systems ein und definieren einige grundlegende Parameter. Sie können die zwei Hauptmodule aktivieren und deaktivieren (Einreichung & Begutachtung sowie Teilnehmeranmeldung) und beispielsweise die Spracheinstellungen festlegen, ob Sie Gebühren für die Veranstaltung erheben und MwSt. berechnen möchten und ob die Autorendaten den Gutachtern angezeigt werden sollen (Doppelblind-Begutachtung).
Es ist vergleichsweise einfach, alle Ausgabetexte des Systems anzupassen. Sie sind in einer Sprachdatei im Verzeichnis etc/ enthalten. Die beiden Standardsprachen sind Englisch und Deutsch; die entsprechenden Dateien heißen english.lang und german-utf8.lang. Weitere Sprachen sind auf Anfrage erhältlich.
Vorsicht: Unsachgemäße Änderungen der Texte können leicht zu Problemen führen. Ändern Sie daher nur dann etwas, wenn es wirklich notwendig ist, und testen Sie die Änderungen sorgfältig.
7. Seitenkopf und -fuß anpassen
ConfTool bietet Ihnen die Möglichkeit, einen Seitenkopf und einen Seitenfuß einzubinden, die auf allen Seiten eingefügt werden. Dies kann einfaches HTML, aber auch PHP-Code sein. Die beiden Dateien liegen im Verzeichnis etc/ und heißen siteheader.inc.php und sitefooter.inc.php. Passen Sie diese Dateien an, um das Tool optisch in Ihre Webseite einzufügen.
Zudem sollten Sie die Bild-Dateien logo-left.gif und logo-right.gif im Verzeichnis htdocs/ durch das Logo Ihrer Konferenz bzw. Organisation ersetzen (empfohlene Breite: ca. 120–150 Pixel, Höhe: 60–80 Pixel). Die Datei logo-invoice.gif sollte ebenfalls ersetzt werden; sie erscheint rechts oben auf den Rechnungen und ist in der Regel das Logo des verantwortlichen Veranstalters.
Es ist möglich, die Farbgebung von ConfTool zu verändern: Für die Darstellung werden Cascading Style Sheets verwendet, deren Definitionen Sie in htdocs/conftool.css finden. Für Änderungen kopieren Sie bitte die anzupassenden Definitionen in die Datei conftool-custom.css. Beachten Sie jedoch, dass die Anpassung nicht so einfach ist, wie sie zunächst erscheinen mag: Bitte testen Sie Ihr neues Farbschema, um sicherzustellen, dass das System durch die Änderungen nicht unbenutzbar wird.