如何在 cron 作业中使用 curl?

如何在 cron 作业中使用 curl?

我需要在 cpanel 中设置一个 cron 作业,每周调用一次 URL(在同一台服务器上)。我打算使用获得但事实证明,此功能在正在使用的共享服务器上被禁用。

有没有其他选择获得?我听说过卷曲可以使用,但我不知道如何在 cron 命令中设置它。

另外,什么命令可以让 cronjob 在完成时不执行任何操作?

非常感谢任何想法!

答案1

与使用 wget 不同,curl 的工作方式如下:

curl --silent http://domain.com/cron.php

其工作方式与 wget 相同。如果您启动的是 php 文件,有什么原因不能通过命令行 php 解释器运行它吗?如下所示:

php -q /path/to/cron.php

在 Web 服务器请求上也是一样,并且通常工作得更快,而且通过 Web 服务器 /curl 调用时不存在某些超时限制

答案2

如果 curl 可用,你可以尝试类似

1 1 * * 0  /usr/bin/curl --silent http://example.come/some.php &>/dev/null

这应该会导致 curl 完全静默,因此您在完成时不会收到任何电子邮件。

答案3

我建议除了 --silent 之外还添加“-m”参数,因为此参数设置允许传输的最大时间。想象一下,你每分钟调用一次 cron,而脚本需要 2 分钟 - 这可能会对服务器负载或其他事情产生不良影响。

1 1 * * 0  /usr/bin/curl -m 120 -s http://example.come/some.php &>/dev/null

相关内容