Jump to content
Froxlor Forum
  • 0

froxlor cronjob findet arguments nicht / register_argc_argv Problem


carl

Question

Moin,

nach ein bisschen Server-Pflege inkl. Froxlor-Update habe festgestellt, dass der CronJob offenbar nicht mehr ausgeführt wird.

Meine manuellen Versuche über CLI:

/usr/bin/php-cgi /var/www/froxlor/scripts/froxlor_master_cronjob.php --debug --force (PHP 8.1)
/usr/bin/php-cgi7.2 /var/www/froxlor/scripts/froxlor_master_cronjob.php --debug --force
/usr/bin/php-cgi7.4 /var/www/froxlor/scripts/froxlor_master_cronjob.php --debug --force

Ich bekomme immer den gleichen Fehler

PHP Notice:  Undefined variable: argv in /var/www/froxlor/scripts/froxlor_master_cronjob.php on line 25
PHP Warning:  count(): Parameter must be an array or an object that implements Countable in /var/www/froxlor/lib/Froxlor/Cron/MasterCron.php on line 49

Darum bin ich in die PHP Konfiguration rein und habe jeweils in den php.ini Settings

register_argc_argv = On

gesetzt. Da die neuen PHP Einstellungen vom CronJob nicht durchgeführt werden können wegen des Fehlers, habe ich den CronJob darum so ausgeführt

/usr/bin/php-cgi7.4 -dregister_argc_argv=On /var/www/froxlor/scripts/froxlor_master_cronjob.php --debug --force

womit der Job auch wieder durchläuft.

Das Problem ist allerdings, dass register_argc_argv=On scheinbar trotzdem nicht in der .ini landet, denn auch hinterher bleibt es bei Off:

/usr/bin/php-cgi7.4 -i | grep register_argc_argv
<tr><td class="e">register_argc_argv</td><td class="v">Off</td><td class="v">Off</td></tr>

Ich habe auch schon versucht, den Wert direkt in der php.ini zu setzen, aber auch das scheint nichts am CGI PHP zu ändern (die FPM-Version zeigt register_argc_argv = On).

Nun komm ich nicht weiter, kann jemand aushelfen?

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

  • 1
2 minutes ago, carl said:

Meine manuellen Versuche über CLI:

/usr/bin/php-cgi /var/www/froxlor/scripts/froxlor_master_cronjob.php --debug --force (PHP 8.1)
/usr/bin/php-cgi7.2 /var/www/froxlor/scripts/froxlor_master_cronjob.php --debug --force
/usr/bin/php-cgi7.4 /var/www/froxlor/scripts/froxlor_master_cronjob.php --debug --force

und da ist auch schon dein fehler... du führst "php-cgi" aus...nicht "php" (mit welcher dann auch die CLI php.ini greift, wo das alles wunderbar funktioniert weil aktiviert)

Link to comment
Share on other sites

  • 0

ich könnte schwören, ich hab irgendwo php-cgi gelesen 🙈.

Danke für den Wink!

PS: D.h. die CGI Versionen niemals über Console ausführen?

PPS: Wenn ich Froxlor auch mit CGI / FCGID ausführen will, ändert sich daran auch nichts?

Link to comment
Share on other sites

  • 0
5 minutes ago, carl said:

PS: D.h. die CGI Versionen niemals über Console ausführen?

Dafür ist sie nicht gedacht nein

6 minutes ago, carl said:

PPS: Wenn ich Froxlor auch mit CGI / FCGID ausführen will, ändert sich daran auch nichts?

Nein, die Cronjobs werden mit der cli-variante von php ausgeführt (/usr/bin/php) - unabhängig von der integration im webserver (mod_php, fcgid oder php-fpm)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×
×
  • Create New...