繁体   English   中英

Cronjob php脚本无法正常工作

[英]Cronjob php script not working

我正试图设置一个每20分钟运行一次的cronjob。 这可以手动工作:

php /srv/www/mysite.co.uk/public_html/PP/Make_XML.php LONDON

我尝试使用“crontab -e”并将其设置为每20分钟一次:

 */20 * * * * php /srv/www/mysite.co.uk/public_html/PP/Make_XML.php LONDON

它保存到/tmp/crontab.0xYhei9m/crontab

它似乎不起作用。 这有什么不对?

编辑:

目前的统计数据:

*。 cron启动并运行:

 root 31855 1 0 08:39 ? 00:00:00 /usr/sbin/cron 

*。 运行“crontab -l”显示:

* / 20 * * * * / usr / bin / php /srv/www/mysite.co.uk/public_html/PP/Make_XML.php伦敦

但仍然没有去。 再次手动运行脚本工作正常。

是cron守护进程甚至运行?

它保存到/tmp/crontab.0xYhei9m/crontab

是的 - 这是你刚编辑的文件 - 它不是文件crond读取来解雇工作。 然后Crontab会读取此文件,在crond查找它的位置安装更新的crontab,并通知crond它需要处理该文件。

你检查过:

  1. crond正在运行?
  2. 你的uid被允许安排cron工作(通常通过/etc/cron.allow / /etc/cron.deny)
  3. 该脚本真的不是由cron启动而由于权限错误而失败?
  4. 您使用的crond版本是否支持$ PATH并且可以找到可执行文件?

如果这已经在线,请尝试使用wget而不是php,使用url而不是路径,即:

* / 20 * * * * wget http://YOUR_IP/~YOUR_USER/PATH/Make_XML.php

要么

* / 20 * * * * wget http://mysite.co.uk/PP/Make_XML.php

首先确保网址有效,只需用浏览器打开即可

希望能帮助到你!

Crontab对PATH变量一无所知。 所以使用你的php的绝对路径(例如/ usr / bin / php)/你可以运行命令which php找到你的php路径

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM