![]() |
Scheduler: cli_dispatch.phpsh gibt Fehler aus - Druckversion +- Webdesign-Forum (https://webdesign-forum.net) +-- Forum: TYPO3 CMS (https://webdesign-forum.net/forum-1.html) +--- Forum: Konfiguration (https://webdesign-forum.net/forum-3.html) +--- Thema: Scheduler: cli_dispatch.phpsh gibt Fehler aus (/thread-1698.html) Seiten:
1
2
|
Scheduler: cli_dispatch.phpsh gibt Fehler aus - wolfgang - 10.09.2012 Ich wollte für den Scheduler bei TYPO3 einen Cronjob einrichten. Nachdem ich bemerkt hatte, dass der Cronjob offenbar nicht funktionierte, habe ich das Skript "cli_dispatch.phpsh scheduler" mal direkt in der Shell aufgerufen. Dabei kam folgende Fehlermeldung: The first argument must be a valid key. X-Powered-By: PHP/5.3.13 Content-type: text/html PHP läuft auf dem Server als CGI. Googlen hat mir nicht wirklich geholfen, ich fand keinen Lösungsansatz, den ich verstanden hätte. Hat jemand eine Idee, was ich hier machen könnte, damit das Skript richtig funktioniert? RE: Scheduler: cli_dispatch.phpsh gibt Fehler aus - wolfgang - 11.09.2012 So, ich habe gerade eben die Lösung gefunden. Es lag an dem php.ini-Parameter register_argc_argv. Obwohl dieser laut phpinfo() in der globalen php.ini des Server On war, musste ich ihn in der von mir für die Domain modifizierten php.ini noch mal extra auf on setzen, also register_argc_argv = On Danach hat die Parameterübergabe an das Skript funktioniert und der Cronjob läuft wie erwartet. RE: Scheduler: cli_dispatch.phpsh gibt Fehler aus - rpflamm - 11.09.2012 also ich rufe meine immer im cron so auf: Code: /usr/bin/php -c /var/www/vhosts/domain.tld/etc/php.ini /var/www/vhosts/domain.tld/htdocs/typo3/cli_dispatch.phpsh scheduler Aber ob es an der Konfigurationsdatei liegt, die ich mit einbinde, wage ich zu bezweifeln. Den "_cli_scheduler" Benutzer hast du sicherlich auch angelegt, sonst würde ein anderer Fehler kommen... Rufst du das Script mit dem Vollständigen Pfad auf? Oder per "./cli_dispatch.phpsh"? Wenn ich das richtig verstanden habe wird ein Absoluter Pfad vorausgesetzt. Eventuell mal noch folgendes versuchen: Code: // mimic CLI API in CGI API (you must use the -C/-no-chdir and the -q/--no-header switches!) Also: Code: /usr/bin/php -C -q /var/www/vhosts/domain.tld/htdocs/typo3/cli_dispatch.phpsh scheduler EDIT: (11.09.2012, 08:55)wolfgang schrieb: So, ich habe gerade eben die Lösung gefunden. Ich schreibe zu langsam ![]() RE: Scheduler: cli_dispatch.phpsh gibt Fehler aus - wolfgang - 11.09.2012 Ich war leider zu voreilig. Heute Mittag ging es einmal, heute Abend kommt wieder die gleiche Fehlermeldung, und im TYPO3-Backend sehe ich auch, das der geplante Task nicht ausgeführt wurde. Ich rufe das Skript über den absoluten Pfad auf. Dein letzter Vorschlag mit -C -q hat auch nichts gebracht, es kommt die gleiche Fehlermeldung. RE: Scheduler: cli_dispatch.phpsh gibt Fehler aus - virtualmachine - 13.09.2012 Okay, dann müsste man mal etwas näher drauf schauen: Ruf den Interpreter mal mit so auf: Code: /path/to/php -v Zeig doch bitte außerdem den relevanten Teil deiner crontab: Code: crontab -l | grep scheduler Dein Fehler weist darauf hin, das Du die cgi-binary für den Cronjob aufrufst.. RE: Scheduler: cli_dispatch.phpsh gibt Fehler aus - wolfgang - 13.09.2012 Okay, hier mal die Ausgaben: Code: xxx@www561:~$ /usr/local/php-5.3/bin/php -v EIntrag in der crontab: Code: */30 * * * * /usr/local/php-5.3/bin/php /absoluter/pfad/zum/skript/t3see.de/www/v2/typo3/cli_dispatch.phpsh scheduler AW: Scheduler: cli_dispatch.phpsh gibt Fehler aus - virtualmachine - 14.09.2012 Kram doch da mal drin rum.. Da schimmeln bestimmt noch andere binaries rum: ls - Al /usr/local/php-5.3/bin | grep php Und interessant wäre auch, ob da noch woanders welche rum liegen.. Vielleicht mag dein Provider keine eigenen Skripte auf der Shell? Im Zweifelsfall fragst du die mal um rat-die haben es schließlich selbst kompiliert.. Viele Grüße, Cedric Gesendet von meinem Galaxy Tab 10.1N RE: Scheduler: cli_dispatch.phpsh gibt Fehler aus - wolfgang - 14.09.2012 Der Pfad stimmt schon. Da wären noch ältere PHP-Versionen zur Verfügung, aber ich nutze die 5.3. Doch, Skripte darf man ausführen, das sollte nicht das Problem sein. Hier trotzdem mal die Ausgabe: Code: xyz@www561:~$ ls -Al /usr/local/php-5.3/bin | grep php AW: RE: Scheduler: cli_dispatch.phpsh gibt Fehler aus - virtualmachine - 14.09.2012 (14.09.2012, 12:39)wolfgang schrieb: Der Pfad stimmt schon. Da wären noch ältere PHP-Versionen zur Verfügung, aber ich nutze die 5.3. Da haben wir die Antwort: Probiere es mit folgender: /usr/local/php-5.3/bin/php-cli /pfad/zum/Skript scheduler Ich bin mir sehr sicher :-) Also einmal so ohne cron ausprobieren und wenn es nicht klappt, dann bitte einmal /pfad/zur/php-cli -v Was das problem ist: im Normalfall kommen beim kompilieren 3 Binaries raus: php, php-cgi und eine fcgi Variante (je nach Konfiguration..). Wobei der "normale" Interpreter eigentlich die cli Variante sein sollte.. Bei deinem Hoster ist das ein wenig anders.. Mich würde zum Spass noch folgendes Kommando interessieren: which php // edit: falscher pfad oops Viele Grüße, Cedric Gesendet von meinem Galaxy Tab 10.1N RE: Scheduler: cli_dispatch.phpsh gibt Fehler aus - wolfgang - 14.09.2012 Das manuelle Ausführen hat jetzt funktioniert ![]() Morgen weiss ich dann, ob der Cronjob automatisch abgearbeitet wurde. which php gibt aus: /usr/local/php-5.3/bin/php Deshalb hatte ich auch diesen Pfad benutzt. |