我试图做一个cron,每5分钟运行一次url。
我试图使用WGET,但是我不想在服务器上下载文件,我只想运行它。
这是我用的(crontab):
*/5 * * * * wget http://www.example.com/cronit.php
是否有任何其他命令使用以外的wget只是运行的url,而不是downlaod它?
你可以告诉wget不要以几种不同的方式下载内容:
wget --spider http://www.example.com/cronit.php
这将只执行HEAD请求,但可能做你想做的事情
wget -O /dev/null http://www.example.com/cronit.php
这会将输出保存到/ dev / null(黑洞)
你可能也想看看wget的-q开关,它阻止它创建输出
我认为最好的选择可能是:
wget -q --spider http://www.example.com/cronit.php
这是除非你有一些特殊的逻辑检查用于请求页面的HTTP方法
wget -O- http://www.example.com/cronit.php >> /dev/null
这意味着将文件发送到标准输出,并发送标准输出到/ dev / null
我试过以下格式,工作正常
*/5 * * * * wget --quiet -O /dev/null http://localhost/cron.php
如果你只想在php失败的时候得到输出:
php -r 'echo file_get_contents(http://www.example.com/cronit.php);'
这样,只有当脚本失败时,才会收到来自cronjob的电子邮件,而不是每当调用php。