Error Log Frage

Fragen zur Installation von CONTENIDO 4.9? Probleme bei der Konfiguration? Hinweise oder Fragen zur Entwicklung des Systemes oder zur Sicherheit?
Antworten
peanut
Beiträge: 246
Registriert: Do 25. Nov 2004, 19:34
Kontaktdaten:

Error Log Frage

Beitrag von peanut » Mo 6. Feb 2023, 12:18

Hallo zusammen

Ich bekomme hier immer diese Art Fehler, sobald ich ein Modul speicher. Alles andere zum Speichern ist ok:

Die Dateien, die nicht gefunden werden, sind:

/var/www/sites/v07062504/html/data/temp/code_gen_63e0c5405cba0.php
/var/www/sites/v07062504/html/data/temp/code_gen_63e0c77c5bc6e.php
/var/www/sites/v07062504/html/data/temp/code_gen_63e0c77cf31f4.php
/var/www/sites/v07062504/html/data/temp/code_gen_63e0c77d2edda.php

Es geht um eine 4.9.9 - Gab es da mal sowas wie eine code_gen.php Datei ? Genau diese 4.9.9 finde ich nicht zum Download / Vergleichen.

Danke im Voraus
Gruss
Peanut
du liest nie ein Buch und weisst weise der Bildung auszuweichen ....

xmurrix
Beiträge: 3143
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Kontaktdaten:

Re: Error Log Frage

Beitrag von xmurrix » Mo 6. Feb 2023, 13:24

Hallo Peanut,

die Ursache für die Fehler in der errorlog.txt sind bisher nicht genau bekannt, die Fehler tauchen aber hin und wieder auf.

Es hat sehr wahrscheilich etwas mit Berechtigungen zu tun. Bei vielen Systemen können Anwendungen in das tmp-Verzeichnis schreiben, aber nur ein bestimmter Benuitzer (i.d.R. root) kann die Dateien darin löschen. Mir sind auch Fälle bekannt, in denen solche Fehler in der errorlog.txt sporadisch erschienen sind, was dann einen anderen Grund haben kann.

Genauer geschieht dies beim Generieren des Code der Seite, auch beim Speichern des Moduls. An einer bestimmten Stelle (in contenido/classes/code_generator/class.code.generator.standard.php ab Zeile 133) werden Modul-Codes von Kommentaren und unnötigen Leerzeichen bereinigt. Dafür muss der Modulcode temporär in einer Datei gespeichert werden. Und hier liegt das Problem, nach Abschluss der Bereinigung wird versucht, die zuvor erstellte temporäre Datei wieder zu löschen, was dann zu diesen Fehlermeldungen führt.

Diese Einträge in der Fehler-Log kann man eigentlich ignorieren. In der Entwicklungsbranch von CONTENIDO lässt sich das Entfernen von Kommentaren und unnötigen Leerzeichen abstellen, dann würden solche Fehler in der Fehler-Log nicht erscheinen.

Du kannst auch bei dir in contenido/classes/code_generator/class.code.generator.standard.php die Zeile 141 wie folgt anpassen

Code: Alles auswählen

                    @cFileHandler::remove($tmpFile);
Dann werden beim Ausführen der Funktion etwaige Fehler unterdrückt. Das löst zwar nicht die eigentliche Ursache, dafür sollten solche Einträge in der Fehler-Log nicht mehr erscheinen.

Es muss aber dann auch sichergestelt werden, dass das tmp-Verzeichnis nicht mit der Zeit volläuft, sofern nicht das System die Aufgabe der Bereinigung des tmp-Verzeichnisses übernimmt.

Gruß
xmurrix
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.

Antworten