Cronjob不工作 - 试图运行PHP脚本

时间:2013-01-22 08:53:25

标签: php cron

我正在运行一个运行PHP脚本的cronjob来完成一些事情;首先,它打开数据库并将表的内容存储到memcache中;第二,它创建一个基本上是几个数组的Javascript文件,以便客户端浏览器可以完成大量工作并使服务器免于过载。这是新添加的。

脚本手动运行非常好,一年多来它完成了它的工作,每10分钟更新一次内存缓存。添加Javascript文件是一个大问题; cronjob s / b每隔10分钟创建一个新的,更新版本的文件,但看起来不起作用,除非我从命令行手动运行它。

我可以通过这样做来检查:

ls -al id_index.js  

并检查文件列表中的时间戳。

从crontab启动的脚本创建Javascript文件有问题吗?

顺便说一下,cronjob文件条目如下所示:

# m h  dom mon dow   command
*/10 * * * * php /home/accountname/public_html/mc_store_arrays.php

感谢任何和所有帮助。

3 个答案:

答案 0 :(得分:1)

您很可能必须指定php cli解释器的绝对路径,因为cron环境很少定义可用的PATH环境变量。

答案 1 :(得分:1)

您希望在哪个目录中创建javascript文件?它可能在某处创建的......无论cron的工作目录恰好是脚本运行的时候(也许是/root/?)。确保使用绝对路径或使用例如

指定输出文件
file_put_contents(__DIR__ . '/id_index.js', $content);

将根据正在运行的php脚本的路径创建文件,而不是执行它的路径。

答案 2 :(得分:-1)

尝试使用LYNX(只是使用网络浏览器的方式);

示例: LYNX http://www.MyDomain.Com/MyScript.php?MyParameter=MyValue&And=SoOn