Bug #7714
closed
autocron fails to open logfiles
Added by Nicola Chiapolini over 5 years ago.
Updated over 5 years ago.
Description
PHP Warning: fopen(fileadmin/protected/log/sql.log): failed to open stream: No such file or directory in /var/www/htdocs/typo3conf/ext/qfq/Source/core/helper/Logger.php on line 44
Ich vermute das Problem ist, dass autocron.php nicht in API_DIR_EXT = 'Source/api'
liegt...
Das Problem war doch an einem anderen Ort: Working directory für `www-data`s cron jobs ist `/var/www/`, meine QFQ-Version ist aber nicht dort installiert...
Ein passendes `cd /var/www/... && ` zu beginn des Crontab-Eintrags löst das Problem.
Unklar ist mir, weshalb das vor dem Update funktioniert hatte... habt ihr da sonst noch etwas angepasst?
- Status changed from New to Feedback
- Assignee set to Carsten Rose
OK, habe das Problem gefunden...
Erstaunlicherweise haben die exakt gleichen Einstellungen auf dem Produktiv-System zu einer einzigen (ähnlichen) Fehler-Meldung geführt, danach hat alles funktioniert.
Entsprechend bin ich dann zurück und habe Unterschiede zwischen den beiden Systemen gesucht. Das hat viel länger gedauert als nötig, wie üblich sieht oder versteht man die Hinweise erst im Nachhinein :-)
Anyway:
Das Problem ist tatsächlich, dass wir typo3 nicht im Home von www-data /var/www
sondern in /var/www/htdocs/
installiert haben.
Entsprechechend findet sich der fileadmin unter /var/www/htdocs/fileadmin
. Die Cron-Jobs von www-data werden aber in dem entsprechenden Home ausgeführt (und nicht wie das Form von Autocron behauptet im "CWD: Site installation directory")
und das log nach /var/www/fileadmin/
geschrieben.
Falls der Ordner nicht existiert, wird der beim ersten Ausführen von autocron.php angelegt. Auf dem Entwicklungssystem gehört /var/www
aber root und so hat auch das Anlegen fehlgeschlagen.
Das Problem lässt sich also an verschiedenen Stellen lösen:
- autocron.php könnte das Log wirklich relativ zum Site installation directory schreiben
- der Cronjob kann als * * * * * cd /var/www/htdocs && /usr/bin/php /var/www/htdocs/typo3conf/ext/qfq/Source/external/autocron.php
definiert werden
- im autocron-Eintrag kann der Log-Pfad relativ zum Home von www-data oder als absoluter Pfad eingetragen werden
Ich gehe vorerst mit der zweiten Option.
- Target version set to 141
- Status changed from Feedback to Closed
- % Done changed from 0 to 100
- Target version changed from 141 to 146
Hallo Nicola
Danke fuer den Report - mittlerweile hat sich herausgestellt das wir das gleiche Problem haben. Sollte mit der kommenden 19.2.0 gefixt sein.
CU
Carsten
- Target version changed from 146 to 19.2.0
Also available in: Atom
PDF