Technische FAQ zu ConfTool
Inhalt
1. Benutzer werden nach wenigen Minuten abgemeldet
2. Probleme beim E-Mail-Versand
3. Neue Benutzer lassen sich nicht registrieren
4. Datei-Uploads funktionieren nicht
5. Probleme mit der Zeichenkodierung
6. HTTPS / sichere Verbindung nutzen
Bitte prüfen Sie die folgenden Punkte, bevor Sie uns kontaktieren.
1. Benutzer werden nach wenigen Minuten aus ConfTool abgemeldet
Dieses Problem wird in der Regel durch ein zu kurzes Session-Timeout in der PHP-Konfiguration Ihres Servers verursacht. Der Standardwert in PHP beträgt nur 1440 Sekunden = 24 Minuten – meist viel zu kurz, um ein Gutachten zu schreiben. Wir empfehlen mindestens zwei Stunden (7200 Sekunden), besser fünf Stunden (18000 Sekunden).
Prüfen Sie zur Behebung Folgendes:
- In der Datei php.ini sollte der Parameter session.gc_maxlifetime mindestens 7200 betragen: session.gc_maxlifetime = 7200
- Denken Sie daran, Apache nach der Änderung dieser Parameter neu zu starten.
- Prüfen Sie, ob evtl. ein Cronjob die Session-Daten aus dem temporären Verzeichnis löscht. Der Parameter session.save_path gibt den Speicherort der temporären Session-Dateien an.
- Bitte beachten Sie: Diese Einstellung in Ihrer .htaccess-Datei oder in der settings.php von ConfTool zu ändern (ini_set("session.gc_maxlifetime", 7200);) hat in der Regel keine Wirkung.
- Prüfen Sie außerdem, ob irgendwo auf Ihren Webseiten ein Link zu ConfTool existiert, der eine Session-URL enthält. Beispiel: www.example.com/conftool/index.php?page=register&CTSID=ill8c08vuKklUegQZ8KWxyz9q – bitte korrigieren Sie dies zu: www.example.com/conftool/index.php?page=register
2. Wir haben Probleme beim E-Mail-Versand mit ConfTool
- Überprüfen Sie Ihre SMTP-Servereinstellungen in etc/conftool.conf.php.
- Sehen Sie im Apache-Fehlerprotokoll nach, ob ConfTool Fehlermeldungen ausgibt.
- Testen Sie mit einem anderen Mail-Client auf demselben Rechner, ob der Mailserver erreichbar ist.
- Prüfen Sie, ob auf dem Rechner eine Firewall läuft, die die SMTP-Verbindungen blockiert.
- Prüfen Sie, ob ein Virenscanner auf dem Rechner ausgehende SMTP-Verbindungen für den httpd blockiert.
- Öffnen Sie conftool/lib/mail.lib.php und kommentieren Sie die Zeilen mit den Fehlerausgaben aus, um Ihre Mail-Einstellungen zu debuggen.
- Auf einem Linux-Server stehen viele Open-Source-Mailserver zur Verfügung, etwa Postfix. Unter Windows lässt sich mit MailEnable einfach ein lokaler Mailserver installieren.
Ein Google- (Gmail-)Konto als SMTP-Server nutzen.
Beachten Sie, dass Google die einfache Authentifizierung per Benutzername/Passwort („weniger sichere Apps") 2022 abgeschaltet hat. Sie müssen nun ein App-Passwort erstellen – wofür die Zwei-Faktor-Authentifizierung (2FA) für das Konto aktiviert sein muss – oder OAuth2 verwenden. Falls ein Fehler wie PHP Warning: fsockopen(): SSL operation failed with code 1 beim Verbindungsaufbau auftritt, verwenden Sie Port 465 (implizites SSL) statt 587 (STARTTLS).
3. Wir können keine neuen Benutzer in ConfTool registrieren
Falls beim Anlegen neuer Benutzer eine E-Mail-Adresse abgelehnt wird, gehen Sie bitte wie folgt vor:
- Prüfen Sie, ob der DNS-Server Ihres Hosts korrekt arbeitet (mit den Befehlen nslookup oder host), oder
- deaktivieren Sie den DNS-Test in ConfTool in der Konfigurationsdatei etc/conftool.conf.php.
4. Datei-Uploads funktionieren nicht – wir erhalten nur ein leeres Dokument oder eine Fehlermeldung
- Sehen Sie im Apache-Fehlerprotokoll nach. Sehr oft finden sich dort die entsprechenden Hinweise.
- Rufen Sie www.ihreseite.org/conftool/info.php auf, um zu prüfen, ob Ihre PHP-Einstellungen für Datei-Uploads geeignet sind. Alle drei Werte upload_max_filesize, post_max_size und memory_limit müssen größer als die benötigte Dateigröße sein (z. B. 10M).
- Meist ist dies unkritisch, doch bei manchen Systemen muss max_execution_time hoch genug sein (Achtung, das sind Sekunden!). Bei IIS muss das CGI-Timeout ebenso hoch sein, sonst bricht der Server die Übertragung ab.
- Prüfen Sie in der php.ini, ob die folgenden Parameter gesetzt sind:
- upload_tmp_dir = "/tmp/" (oder z. B. C:\temp\ unter Windows).
- Prüfen Sie, ob dieses Verzeichnis für Ihren Webserver beschreibbar ist und ob die hochgeladene Datei nach dem Upload dort erscheint.
- file_uploads = On ist erforderlich, um Uploads überhaupt zuzulassen.
- Finden Sie im Apache-Fehlerprotokoll Meldungen wie Requested content-length of XXXXX is larger than the configured limit of 524288, müssen Sie den Wert von LimitRequestBody erhöhen. Diesen Parameter finden Sie meist in /etc/httpd/conf.d/php.conf. Setzen Sie ihn auf einen größeren Wert wie 16777216.
- Starten Sie den httpd nach Änderungen an den Apache- oder PHP-Konfigurationsdateien neu!
5. Probleme mit der Zeichenkodierung
Die aktuellen Versionen von ConfTool Standard und ConfTool Pro verwenden die UTF-8-Kodierung. Die Zeichenkodierung von ConfTool wird in der Datei etc/conftool.conf.php in $ctconf['charset'] festgelegt.
utf8mb4 verwenden, nicht utf8.
In aktuellen MySQL-/MariaDB-Versionen ist der Zeichensatz utf8 nur ein Alias für das eingeschränkte 3-Byte-utf8mb3, das nicht den vollen Unicode-Bereich speichern kann (z. B. Emojis oder manche CJK-Zeichen). Verwenden Sie stets utf8mb4 mit einer passenden Kollation wie utf8mb4_unicode_ci (oder utf8mb4_0900_ai_ci unter MySQL 8), um beschädigte oder abgelehnte Zeichen zu vermeiden.
Allgemeine Hinweise zur Zeichenkodierung in MySQL
- Stellen Sie sicher, dass Ihre MySQL-Datenbank dieselbe Kodierung wie Ihre ConfTool-Installation verwendet. Für UTF-8 können Sie z. B. nach dem CREATE DATABASE-Befehl folgende Befehle zum Setzen der korrekten Kodierung verwenden:
SET NAMES utf8mb4;
SET COLLATION_CONNECTION = utf8mb4_unicode_ci;
ALTER DATABASE DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
- Falls Sie vergessen haben, die korrekte Kodierung für Ihre Datenbank zu setzen, installieren oder aktualisieren Sie sie:
ALTER DATABASE DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
oder für einzelne Tabellen mit:
ALTER TABLE XXXXX CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
(die Kollation bestimmt die für Indizes verwendete Sortierreihenfolge).
- Stellen Sie sicher, dass die Sprachdateien dieselbe Zeichenkodierung wie Ihre ConfTool-Installation und Datenbank haben. Verwenden Sie zum Bearbeiten/Konvertieren z.B. Notepad++.
- Wenn Sie die Datenbank importieren, verwenden Sie den Schalter --default-character-set, z. B.:
mysql -u user -p --default-character-set=utf8mb4 database < data.sql
- Weitere Schalter für die MySQL-Konsole:
- SET NAMES utf8mb4
- SET CHARACTER SET utf8mb4
- SET character_set_results = NULL
6. Wir möchten HTTPS / eine sichere Verbindung nutzen. Was ist zu tun?
HTTPS ist heutzutage faktisch verpflichtend – moderne Browser warnen Besucher vor unverschlüsselten Verbindungen, und Login-Daten sollten niemals im Klartext übertragen werden. Wir empfehlen daher dringend, ConfTool ausschließlich über HTTPS zu betreiben.
ConfTool unterstützt HTTPS, aber die sichere Verbindung stellt der Webserver her. Sie müssen Ihren Server also entsprechend konfigurieren und ein Zertifikat beschaffen. Weitere Informationen dazu finden Sie im Internet. Falls Sie ein kostenloses, „offizielles" Zertifikat benötigen, siehe Let's Encrypt:
Um die Nutzung von HTTPS in ConfTool zu erzwingen, passen Sie einfach die Variable $ctconf['web/baseurl'] in etc/conftool.conf.php an. Das war's.