Extraausgabe für Systemadministratoren
Mit dieser Systemaktualisierung bitte ich Sie, als Systemadministrator, folgende Anpassungen durchzuführen, falls diese nicht vom Hintergrundskript gcautakt00032 schon durchgeführt wurden:
- Aktualisieren Sie bitte das System. Im Verzeichnis "goechem-cgi/module" muss anschließend das Modul "mod_gckonf.pm" vorhanden sein.
- Erstellen Sie im gleichen Verzeichnis die Datei "goechem.conf".
- In diese Datei bitte folgenden Eintrag hinzufügen:
DOCUMENT_ROOT = "abs. pfad zum goechem-Verzeichnis"
Hinweis: die Datei "goechem.conf" muss im gleichen Verzeichnis liegen wie die existierende Datei "konfiguration.pm". In diesem Modul existiert folgender Eintrag:
if( !$ENV{DOCUMENT_ROOT} ){ $ENV{DOCUMENT_ROOT}= "abs. pfad zum goechem-Verzeichnis"; }
Diese Zeile wurde bei der Systemeinrichtung angepasst und durfte auch nie geändert, bzw. aktualisiert werden, weshalb auch die Subroutine nie aktualisiert wurde. Der Eintrag es abs. Pfades (z.B. "/var/www/vhosts/goechem.de/goechemtest01" können Sie für den neuen Eintrag verwenden.
Wurde die Aktualisierung vom Hintergrundskript schon durchgeführt (Nach dem Herunterladen der Programmteile einmal abmelden und wieder anmelden), können Sie die obrigen Schritte ignorieren und müssen nur prüfen, ob die Datei goechem.conf angelegt wurde. Falls nicht, können Sie über die Logdatei /daten/log/prot_gcautakt00032.gcl oder die Seite "Systemaktualisierungen" die nötigen Informationen zur Fehlersuche entnehmen.
War alles erfolgreich, muss der GoeChem-Service über z.B. "systemctl restart goechem" neu gestartet werden.
Grund der Aktualisierung
Im Modul konfiguration.pm befindet sich der absolute Pfad zum GoeChem-Verzeichnis, der für die Hintergrunddienste benötigt wird. Weil diese nicht durch den Webserver ausgeführt werden, würde die Umgebungsvariable "DOCUMENT_ROOT" leer bleiben. Zusätzlich, und das ist das Problem befindet sich die Subroutine "getconfig" aus dem Jahr 2007. Bei jedem Aufruf wird die Konfigurationsdatei geöffnet und die Zeilen nach den angeforderten Parameter abgesucht. Dadurch ist es möglich, daß die Konfigurationsdatei mehrere hundert male für ein Skriptdurchgang geöffnet wird.
Deshalb kann das Modul konfiguration.pm nie zentral vom Aktualisierungsskript aktualisiert werden.
Eine Möglichkeit wäre natürlich eine andere Subroutine aufzurufen - Nur dies wäre anfälliger für Fehler, wenn alle Skripte einen Patch bekämen, der den Subroutinenaufruf umbenennt. Deshalb wurde der oben aufgeführte Schritt bevorzugt.
Änderungen im Aktualisierungsskript
Führen Sie die Aktualisierung nicht über den Webbrowser durch, sondern über das Aktualisierungsskript "sync.pl", müssen Sie folgende Änderung im Skript vornehmen.
Suchen Sie nach folgenden Eintrag
rsync ..... --exclude=konfiguration.pm ...
ersetzen Sie durch
rsync ..... --exclude=goechem.conf ...
Hinweis: Die Datei goechem.conf MUSS schon existieren, da es sonst zu einem Fehler in den Programmteilen kommt.
Mit freundlichem Gruß,
Ihr GoeChem-Support