我试图在 Centos 中运行 cronjob crontab -e
,但我无法弄清楚作业何时运行,为什么它没有像-app
ShellDispatcher 中那样找到任何参数。我已阅读
Cake PHP Cronjobs并拥有:
编辑
.bashrc
并添加export PATH="$PATH:/home/phonekar/public_html/app/Console"
向我的用户帐户添加了一个 cronjob
crontab -e
53 23 * * * /home/useraccount/public_html/lib/Cake/Console/cakeshell Tracking -cli "/usr/bin" -console "/home/useraccount/public_html/lib/Cake/Console" -app "/home/useraccount/public_html/app" >> /home/useraccount/public_html/tracking.log 2>&1
手动运行此命令可以正常工作,但是当我让作业运行时,我在循环中收到此错误:
PHP Warning: array_search() expects parameter 2 to be array, null given in /home/useraccount/public_html/lib/Cake/Console/ShellDispatcher.php on line 320
PHP Warning: array_splice() expects parameter 1 to be array, null given in /home/useraccount/public_html/lib/Cake/Console/ShellDispatcher.php on line 324
我查看了该文件,似乎它期待 -app 值,而是获取null
传递给它的值。我还验证了Tracking
外壳可以正常工作。任何澄清都会有所帮助。