我注意到cron作业无法正常工作,因为某些任务未执行(自动Feed生成,google sitemap,...)。
1)我安装了(非常有用的)AOE调度程序
2)我通过PHPmyAdmin检查了cron_schedule SQL表:没有生成任务,但是如果我按下AOE调度程序中的Generate schedule,则会生成一个任务列表。所有任务都保持挂起状态(以NULL执行)。
3)我已经设置了(crontab -e) 0,5,10,15,20,25,30,35,40,45,50,55 * * * * /home/fpl/webapps/magento/cron.sh
我试图通过SSH手动运行cron.sh。当我手动运行sh时,运行心跳任务。所以我也确定问题不在cron.sh脚本中。
Cron正在服务器上正常运行。
配置
Webfaction托管 Magento ver。 1.8.0.0
在magento管理面板上配置Cron计划 每1个生成计划 提前20小时 如果不在15内运行则错过 心跳任务计划(cron语法)0,5,10,15,20,25,30,35,40,45,50,55 * * * *
感谢您的帮助!
答案 0 :(得分:3)
我的猜测是你的cron.sh
不可执行,这就是为什么没有发生的事情。
请检查文件持久性并添加可执行标志
chmod +x /home/fpl/webapps/magento/cron.sh
您可能还想查看服务器的cron日志文件(例如https://askubuntu.com/questions/56683/where-is-the-cron-crontab-log)
而不是依赖于cron可执行的事实,你也可以像这样运行它
/bin/bash /home/fpl/webapps/magento/cron.sh
并且:而不是写下你应该使用的分钟:
*/5 * * * * /bin/bash /home/fpl/webapps/magento/cron.sh
答案 1 :(得分:1)
您是否检查过crontab的状态?
service crond status // depends on your OS
如果它没有运行,请启动它
service crond start
配置系统启动
chkconfig crond on
HTH
祝你好运!答案 2 :(得分:1)
编辑cron.sh并将第39行更改为:
PHP_BIN=`/usr/local/bin/php56`
它试图使用哪个php,但在webfaction服务器上并没有那么多,因为有很多php版本。
答案 3 :(得分:0)
添加
crontab -e */5 * * * * /usr/bin/wget -O /dev/null -q http://www.partsfortreadmill.com/cron.php
并在上述路径中设置正确的cron.php