如何使用cron运行php脚本?

时间:2017-01-17 16:32:33

标签: php email cron

我正在尝试每小时运行一个脚本,检查文件是否已更改,如果有,则发送电子邮件。所以我在另一篇文章(PHP - Email notification whenever a remote file changes)中找到了这个:

$url='http://media1.clubpenguin.com/play/en/web_service/game_configs/paper_items.json';
$ch = curl_init($url);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
$execute = curl_exec($ch);

$fp=fopen('old.json','w+');
$oldjson=fread($fp,filesize('old.json'));

if($execute!=$oldjson){
 mail('your@mail.com','Yoohoo', 'File changed');
 fputs($fp,$execute);
}
fclose($fp);

并将两个文件(空白old.json和scriptTestForCron.php)放在我的cron.hourly文件夹中。我将示例中给出的url更改为文件路径到我想要查看的文件是否已更改,以及邮件信息。问题是它没有通知我它失败了,并且没有发送电子邮件所以我不知道它是否真的运行。有什么方法可以检查吗?还有什么原因它目前无法正常工作?

我试图更改我的crontab文件以运行它并将日志发送到特定文件但尚未收到任何内容。

# run-parts
15 * * * * root run-parts /etc/cron.hourly

# php
1 * * * * php /etc/cron.hourly/scriptTestForCron.php >> /var/log/testLog

这两行中哪一行不应该运行脚本文件?

1 个答案:

答案 0 :(得分:0)

  

如何使用cron运行php脚本?

在Linux上创建crontab条目crontab -e

* 24/1 * * * php /path/to/script.php >> /path/to/logfile.log 2>&1
  • /path/to/logfile.log保存脚本中的所有消息/错误