这两个cron工作有什么区别?

时间:2014-02-17 20:46:10

标签: php cron lamp

我是php的新手,如果有人可以通过告诉我们这两个cron命令之间的区别来帮助我,我会非常感激:

/usr/local/bin/php -q /home/delightl/public_html/myfolder/run.php

php -q /home/delightl/public_html/myfolder/run.php

我完全糊涂了..在我的GoDaddy服务器上,第二个命令工作,但在另一个经销商俱乐部服务器都工作。这些命令有什么区别?

2 个答案:

答案 0 :(得分:4)

唯一的区别是,一个指定PHP二进制文件的完整路径,另一个不指定。

PHP可以安装在不同的位置。这就是它在一台服务器上工作的原因,而不是另一台服务器。

答案 1 :(得分:1)

使用其中任何一个都有赞成和赞成:

/usr/local/bin/php -q /home/delightl/public_html/myfolder/run.php

Pro:指定PHP二进制文件的完整路径,不依赖于用户的$PATH环境变量来正确包含安装PHP的路径。
Con: PHP二进制文件的位置因系统而异。

php -q /home/delightl/public_html/myfolder/run.php

Pro: 通常不需要在系统之间进行更改。
Con:经常无法正常工作,因为许多PHP软件包都不会将PHP添加到cron用户的$PATH,或者运行cron的环境是空白或未填充,因为它是不是互动会议。

恕我直言,最好的解决方案是始终使用完整路径。如果你不确定路径是什么运行which php通过shell告诉你二进制文件的完整路径,只要它在你的 $PATH中。

请参阅:http://en.wikipedia.org/wiki/PATH_%28variable%29