我正在运行一个运行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 回答
您期望在哪个目录中创建javascript文件?它可能正在某处创建......无论cron的工作目录恰好是脚本运行的时候(也许是
/root/
?) . 确保使用绝对路径指定输出文件,例如:这将根据正在运行的php脚本的路径创建文件,而不是执行它的路径 .
很可能你必须指定php cli解释器的绝对路径,因为cron环境很少定义可用的PATH环境变量 .
尝试使用LYNX(就像你使用网络浏览器一样);
示例: LYNX http://www.MyDomain.Com/MyScript.php?MyParameter=MyValue&And=SoOn