Cronjob不执行php?

Cronjob不执行php?,php,ubuntu,cron,crontab,cron-task,Php,Ubuntu,Cron,Crontab,Cron Task,我想在Ubuntu上每10分钟运行一次.php,并使用cron作业。 这是我的crontab: */10 * * * * php -f /var/www/html/gapi/src/test2.php >/dev/null 2>&1 这在日志文件中: CRON[9994]: (root) CMD (php -f /var/www/html/gapi/src/test2.php >/dev/null 2>&1) 在这个例子中,php是一个api调用,

我想在Ubuntu上每10分钟运行一次.php,并使用cron作业。 这是我的crontab:

*/10 * * * * php -f  /var/www/html/gapi/src/test2.php >/dev/null 2>&1
这在日志文件中:

CRON[9994]: (root) CMD (php -f  /var/www/html/gapi/src/test2.php >/dev/null 2>&1)
在这个例子中,php是一个api调用,我可以在api提供者的仪表板上看到api调用,所以我知道php不是每10分钟运行一次

我将文件权限设置为755,我还可以做些什么使其正常工作

更新的Crontab:

*/10 * * * * php -f  /var/www/html/gapi/src/test2.php

尝试通过web服务器请求文件,而不是通过命令行PHP解释器调用脚本

*/10 * * * * wget -q -O /dev/null http://localhost/gapi/src/test2.php
-q
禁止输出,
-O/dev/null
重定向文件输出,使其不保存)

或者改用
curl

*/10 * * * * curl --silent http://localhost/gapi/src/test2.php

URL将取决于服务器的设置方式—您说它目前通过浏览器工作,所以只需在cron文件中使用相同的URL即可。

在php中,您所说的
是api调用的确切含义是什么?听起来好像您正在监视通过Web服务器的任何访问,但正在从命令行调用脚本。如果是这种情况,请将您的请求更改为使用wget通过web服务器请求。首先不要将潜在的错误输出转储到
/dev/null
,您可能会看到它不起作用的原因。@Eborbob这听起来像是原因,您可以创建一个包含更多详细信息的答案吗?我正在使用Google API获取一些数据,如果我用浏览器打开该文件,它可以正常工作。@deceze我编辑了它。因此,出现任何错误消息?
curl
都可以这样做better@OkiErieRinaldi为什么卷曲更好?它会是什么样子?FWIW,“-q”将使wget静音,并停止它输出标题等。我会避免将输出转储到/dev/null-脚本在正常操作时应该是静音的-因此当它行为不正常时,至少有人会收到电子邮件…@OkiErieRinaldi我添加了一个使用
curl
的示例。随便你选。当一个简单的CLI调用就可以完成时,没有必要,有时也不可能涉及web服务器。这是一个疯狂的解决办法。