使用crontab运行PHP文件

时间:2016-02-22 12:14:22

标签: php cron crontab

我需要每1小时运行一次PHP文件。

我正在做的是:

sudo crontab -e

(在编辑器中)* 01 * * * / usr / bin / php /var/www/devicecheck.php

但不知何故,它不起作用。该命令适用于命令行。在此之前,我正在尝试php /var/www/devicecheck.php

有什么建议吗?

3 个答案:

答案 0 :(得分:1)

脚本应具有执行权限。

给出它

chmod +x /var/www/devicecheck.php

同时检查/var/log/syslog是否有错误。

答案 1 :(得分:1)

要每1小时执行一次devicecheck.php,请尝试以下操作:

方法A ::使用crontab中的php

执行脚本
# crontab -e
00 * * * * /usr/bin/php/var/www/devicecheck.php

方法B:使用crontab中的URL

运行php脚本

如果您的php脚本可以使用URL调用,您可以lynx,curl或wget设置您的crontab,如下所示。

以下脚本通过使用lynx文本浏览器调用URL来执行php脚本(每小时)。默认情况下,Lynx文本浏览器以交互模式打开URL。但是,如下所示,lynx命令中的-dump选项会将URL的输出转储到标准输出。

00 * * * * lynx -dump http://www.yourwebsite.com/yourscript.php

以下脚本通过使用CURL调用URL来执行php脚本(每5分钟一次)。默认情况下,Curl显示标准输出中的输出。使用“curl -o”选项,您还可以将脚本的输出转储到临时文件,如下所示。

*/5 * * * * /usr/bin/curl -o temp.txt http://www.yourwebsite.com/yourscript.php

以下脚本通过使用WGET调用URL来执行php脚本(每10分钟一次)。 -q选项表示完全模式。 “-O temp.txt”表示输出将发送到临时文件。

*/10 * * * * /usr/bin/wget -q -O temp.txt http://www.yourwebsite.com/yourscript.php

<强> UPDATE ::

# chmod a+x /home/username/yourscript.php
# crontab -e
00 * * * * /home/username/yourscript.php

答案 2 :(得分:-1)

我让它与wget合作。您可能必须先安装wget。之后它将允许您从cronjob运行PHP脚本。 语法如下:

 * 01 * * */usr/local/bin/wget "http://localhost/devicecheck.php"

其中/ usr / local / bin / wget指向安装wget的目录。 如果您不希望输出,只需添加&#39; -O / dev / null&#39;,如下所示:

 * 01 * * */usr/local/bin/wget "http://localhost/devicecheck.php" -O /dev/null

您还可以在网址中传递参数:

 * 01 * * */usr/local/bin/wget "http://localhost/devicecheck.php?task=somevalue" -O /dev/null