Bug #7714
closedautocron fails to open logfiles
100%
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...
Updated by Nicola Chiapolini about 5 years ago
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?
Updated by Carsten Rose about 5 years ago
- Status changed from New to Feedback
- Assignee set to Carsten Rose
Hallo Nicola
kannst mal Deinen OS Cron Eintrag posten?
Bei uns funktioniert es wie angegeben in https://docs.typo3.org/typo3cms/drafts/github/T3DocumentationStarter/Public-Info-053/Manual.html#id81
Vielen Dank
CU
Carsten
Updated by Nicola Chiapolini about 5 years ago
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.
Updated by Carsten Rose about 5 years ago
- Status changed from Feedback to Closed
- % Done changed from 0 to 100
Applied in changeset typo3-qfq|88795cdd8d231cfbe6c3b65d87287e3c475e863e.
Updated by Carsten Rose about 5 years ago
- 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
Updated by Carsten Rose about 5 years ago
- Target version changed from 146 to 19.2.0