跟随下边的说明来实现在windows机器上设置在指定时间执行cron.php.如果您不熟悉linux/unix,或者您的web主机不支持cron任务,那么这个方法会很有用;您可以在您的电脑上远程执行它们。
注意:这些说明是为windowsXP写的,不过在其它版本的windows上的操作类似。
创建一个计划任务
- 打开任务计划程序
- 到开始 > 程序 > 附件 > 系统工具 > 任务计划程序
- 双击添加计划任务
- 添加计划任务向导将会出现。点击下一步
- 选择将要运行的应用。从列表中选择浏览器(例如,Internet Explorer或Mozilla Firefox)。点击下一步
- 给这个任务一个名称,例如Drupal Cron 任务,选择执行任务的频率(例如,每天),点击下一步。
- 选择明确的日期和时间选项(根据您前一步的选择,这一步可能会有不同)。完成后,点击下一步
- 如果有提示,请输入您的密码。如果需要的话(例如,如果您因为安全原因想使用一个拥有少量权限的用户来执行任务),请改变用户名。点击下一步
- 在最后一步,选中复选框在单击“完成”时,打开此任务的高级属性并点击完成。
配置任务
- 通过选中上一步中的复选框或者双击任务来打开任务设置页面。
- 在运行框中,当文字出现后,(如C:\PROGRA~1\MOZILL~1\firefox.exe),输入一个空格并且把您的网站的cron.php页面地址加上双引号后输进去(如,C:\PROGRA~1\MOZILL~1\firefox.exe http://www.example.com/cron.php)
- 要设置一个比每天更高的频率(如,每小时),点击计划面板,然后点击高级。您可以设置一些参数如重复任务,每1小时,持续23小时。结束后点击完成
- 改变起始时间为从现在开始1分钟,这将允许您测试任务,确保它能正常工作。
- 当您完成所有的设置,点击应用和完成(提示:您可能会被要求输入密码)
命令行版本
另一种实现上边操作的方法是在命令行下使用命令schtasks(或Windows 2000中的at)。要重复上边的例子,使用Firefox每小时运行http://www.example.com/cron.php, 打开命令行(开始 > 程序 > 附件 > 命令行工具)并输入:
http://www.example.com/cron.php
schtasks /create /tn "Drupal Cron Job" /tr "C:\PROGRA~1\MOZILL~1\firefox.exe http://www.example.com/cron.php" /sc hourly
从作者的网站或SourceForge网站下载wget的安装包。把它装到您想安装的地方。
照着上边创建一个计划任务的步骤,除了将wget.exe作为执行程序(如果您是通过.zip包安装的程序,您可能需要点击浏览按钮去定位它)。当您打开高级属性的对话框时,将下边的内容粘贴进去:
-O - -q -t 1 http://www.example.com/cron.php
校准上边剩下的参数并且测试一下
将Winodws 7(或Vista)的cmd.exe中的curl加入计划任务
- 运行计算机管理(Windows键,右键点击我的电脑,选择管理……)
- 在右边一栏,选择创建任务……
- 填写常规选项卡
- 在触发器选项卡下,选择新建……,然后设置您想要的时间,并在高级选项中设置重复次数
- 在动作选项卡中
- ,选择执行一个程序,这个程序是CMD.EXE.在可选参数中输入/C "curl [状态报告页中提到的链接]".
如果您已经安装了mysysgit,那么curl已经在您的系统路径中。
在Windows 7(或Vista)下边使用schtasks和curl
想象一下,您已经安装了上边提到的mysysgit... 以管理员身份运行cmd.exe,然后输入下边的命令:
C:\Windows\system32>schtasks /create /sc HOURLY /tn DevCron /tr "cmd.exe 'curl --silent --compressed http://[[hostname]]/cron.php?cron_key=VOYz8P63mnytd0mHVwFE1jrXfRfNYU9KZiKB1Ou1Rh8'" /ru SYSTEM
[[hostname]]是这篇文档根目录的TLDN, /tn是想要的任务名字(这里是DevCron).
上边的命令产生了一个可以每个小时运行,无限期持续下去的任务。