PHP Cronjob不执行

时间:2012-08-09 23:59:10

标签: php linux cron

我正在运行Ubunutu Linux服务器,PHP5,Apache2,并且无法通过crontab运行任何类型的cronjob。

我使用

编辑crontab
  

crontab -e

我保存了我要运行的文件:

  

* / 5 * * * * php /home/user/public_html/crx/cronx.php

它保存得很好。我可以从控制台运行该文件,并通过罚款。我甚至找不到该文件的任何现有日志。我检查了cron正在运行,停止并开始......没有变化。

当前的php文件只是一个简单的测试脚本,它将一行插入数据库。

我检查了文件的权限并进行了读写。我绝对难过。我似乎无法通过cron获得任何东西。我可以运行什么来测试权限吗?

修改 我也尝试过以下命令

  
      
    •   
      •   
        •   
          •   
          • / usr / bin / php /home/user/public_html/crx/cronx.php
          •   
        •   
      •   
    •   
  •   

我使用whereis php和哪个php找到并确认它在正确的区域运行

1 个答案:

答案 0 :(得分:3)

您的时间值太多*

此外,cron可能没有正确设置PATH以使用PHP。

而是尝试:

*/5 * * * * /usr/bin/php /home/user/public_html/crx/cronx.php

其中/usr/bin/php是PHP的实际路径。在控制台中,您可以运行which php以查看应该使用的PHP二进制文件的路径。

编辑:为了解决问题,还有以下几点需要尝试:

# see if cron is running just by having it create a file
*/5 * * * * touch /tmp/crontab-$(date +%s)

另一种选择:

将PHP脚本的权限设置为755,并将开头更改为:

#!/usr/bin/php -q
<?php
// rest of script

然后将您的cron标签更改为:

*/5 * * * * /home/user/public_html/crx/cronx.php

我仍然不确定cron是问题还是PHP脚本的运行。