【发布时间】:2019-05-21 00:11:51
【问题描述】:
我因此设置了一个 cron 作业:
*/15 * * * * root /usr/bin/php5.6 /var/www/example.com/cr.php
(是的,root 现在是所有者 - 我稍后会解决)
我也尝试过在 .../php5.6 之后使用 -q
但它似乎没有工作,即使 syslog 显示它每 15 分钟执行一次 - 例如:
Dec 20 17:45:01 e2e-53-27 CRON[2601]: (root) CMD (root /usr/bin/php5.6 -q /var/www/example.com/cr.php)
如果我在 bash 提示符下执行用户名“root”之后的部分,它确实有效。
这是在 Debian 上运行的 apache2。我不知道这是否有任何区别,但 PHP 文件使用 curl 调用发送 SMS 的外部 API。
【问题讨论】:
-
你能在命令行上运行它吗...这是第一步。
-
是的,正如我所提到的,我在 bash 提示符(= 命令行)下尝试过,它可以工作。
-
添加`> /var/www/example.com/cr.log 2> /var/www/example.com/cr.error.log`看看有没有错误。另外我建议先添加一些简单的文件:
echo date('Y-m-d H:i:s') -
在相同条件下以同一用户身份运行脚本,可能设置或未设置影响行为的环境变量。
-
@Justinas 您的日志记录技巧有所帮助。显然它无法理解什么是“根”。错误日志说找不到根。我以为需要提供用户名?!