如何使用Cron在特定时间调用特定URL?

时间:2013-04-08 15:14:00

标签: php cron crontab cron-task

我只需要点击一个按钮就需要用户触发一个功能。这将设置一个工作在指定时间执行(比如说早上9点),并最终定期重复。这将由PHP处理

所以我虽然在使用CronJobs和PHP。我已经遵循了这个pretty good tutorial但我真的不知道如何创建triggerred文件(home / path / to / command / the_command.sh)。

有人可以告诉我吗?

编辑: 事实上,我想要做的是拨打网址,如果用户按下某个管理网站上的按钮,请在上午9点说www.google.com。作业的管理部分将由我链接的tut页面上设置的系统处理。我想知道当作者说:

时,这个php脚本应该调用的文件应该是怎样的
$crontab->append_cronjob('30 8 * * 6 home/path/to/command/the_command.sh >/dev/null 2>&1');

我应该将什么内容放入the_command.sh来调用网址?

我不希望这个网址在任何类型的浏览器中打开。这个url基本上会在服务器端触发一个函数。

2 个答案:

答案 0 :(得分:1)

如果您希望在上午9点运行PHP脚本,那么crontab文件中的命令应该类似于:

/usr/bin/php /var/www/mysite/script.php

其中/usr/bin/php是PHP可执行文件的路径,/var/www/mysite/script.php是您要执行的PHP脚本的路径。首先在终端中运行此命令以确保其正常工作。

这适用于任何命令。您应该使用要执行的命令替换 home/path/to/command/the_command.sh按字面意思使用该命令。这是一个将在http://www.google.com/处检索页面的命令:

/usr/bin/curl http://www.google.com/

答案 1 :(得分:1)

有3个可能性

1)每次有任务时在crontab中添加一行。这个是不好的想法

2)加入crontab:

* * * * *  /usr/bin/php /path_to_your_script/script.php

并检查脚本当前时间/触发此时的所有操作。也差,但比1更好

3)创建将执行任务的deamon。例如,每小时开始一次并等待下一小时的事件安排,每分钟检查一次。

如果您只需要来自bash的来电网址,请使用以下内容:

/usr/bin/curl http://www.google.com >/dev/null 2>/dev/null