我正在尝试创建一个cronjob而且我不知道这些行之间的区别是什么,我应该使用哪一行来使Cronjob正常工作。
0 0 * * * /usr/bin/php5.5 /website/cron.php
0 0 * * * /usr/bin/curl /website/cron.php
0 0 * * * /usr/bin/wget /website/cron.php
现在我需要知道哪一个有效,我确信我的服务器使用commande行安装了CURL和WGET:
whereis wget
whereis curl
但是当我尝试创建一个简单的php文件向我发送电子邮件时,只有这段代码适用于我:
0 0 * * * /usr/bin/php5.5 /website/cron.php
那该怎么办?
答案 0 :(得分:4)
CURL
curl是一种使用其中一种方式从服务器传输数据或向服务器传输数据的工具 支持的协议
sytax是
curl [oprions] URL
URL语法与协议有关。您将找到详细的描述 - 在RFC 3986中。
与wget的情况类似
wget [options] URL
两者都会通过HTTP向weserver的php模块提交请求,这只会调用php complier。要在cron中使用cron.php必须位于可通过HTTP
请求的位置像
0 0 * * * /usr/bin/curl http://web-url/cron.php
0 0 * * * /usr/bin/wget http://web-url/cron.php
而
0 0 * * * /usr/bin/php5.5 /website/cron.php
可以简单地用于在servrer上运行本地可用的php脚本
答案 1 :(得分:0)
curl
和wget
应该发送http请求(如下载文件/发布数据等)。
cron.php
是一个php文件。你应该总是使用php(无论什么版本)来执行它。
这就是0 0 * * * /usr/bin/php5.5 /website/cron.php
只有curl
工作的原因。
如果您真的想使用wget
或0 0 * * * /usr/bin/curl --silent http://youwebsite.com/cron.php &>/dev/null
,请举例说明:
{{1}}