我有一组经过测试的 crons,可以在本地环境中运行作业/队列。当我尝试将它们上传到 cpanel 服务器时,crons 似乎不起作用。我将输出通过电子邮件发送给自己进行调试。
当我在 cpanel 主机上运行 cron 时,该命令似乎丢失了选项。
我正在使用 cpanel cron 编辑器(我只有基本的命令行访问权限,没有 crontab)。
如果我跑步:
php /home/accountname/www/artisan schedule:run
我收到一封电子邮件,其中包含工匠“没有选项”的帮助内容...即:
用法:命令[选项][参数]
选项:-h、--help 显示给定命令的帮助。 当没有给出命令时显示列表命令-q的帮助, --quiet 不输出任何消息 -V, --version 显示此应用程序版本 --ansi|--no-ansi 强制(或禁用 --no-ansi)ANSI 输出 ...
直接从命令行运行时,这些命令完全按照预期工作。
[编辑]
我已经能够检查
crontab -l
并且crons已正常添加。
MAILTO="[my email]"
SHELL="/bin/bash"
* * * * * php /home/accountname/www/artisan schedule:run
* * * * * php /home/accountname/www/artisan queue:work --stop-when-empty
^ 它们似乎已正确添加。
如何让 cron 编辑器读取此命令中的选项?
出于某种原因,这似乎是由于未使用正确的 php 版本所致。
通过更改为本地版本的 php 已修复:
/usr/local/bin/php