欢迎各位兄弟 发布技术文章
这里的技术是共享的
在Drupal.org上,我不能找到一个关于“设定cron”的像样的答案,大家都在抱怨。而我的主机提供商的技术支持人员也不能帮我搞定(“这是一个用户问题,不归我们管…”)
我的主机提供商不允许我使用Shell命令(可能是个明智之举)。但是他们多多少少提供了一些标准的cPanel功能。在我的版本中,"Cron"项位于左下边。
在我的一个站点中,我还安装了WebCalendar。当我访问cPanel时,我注意到WebCalendar有个命令已经设立。对其做些简单的修改,下面是我使用的命令:
cd '/home/<i>username</i>/public_html/' ; php -q 'cron.php';
注意,这里的username是我主机的用于域名管理的用户ID,而我的Drupal装在根目录下面(实际的"public_html")。
这样Cron就运行了,但是它生成了一些错误信息。
Cron终于运行了,但是我还是对这些错误信息有所担心。所以,我就在Drupal站点上进行搜索,的确搜到相关的帖子,但是没有答案。所以我又发了一个帖子。这时有人看到了我的帖子。
他们建议我使用WGET,但是我没有shell权限。由于一些原因,我又检查了一遍cPanel的"Advanced"模式。我注意到这里有个帮助提示(当然字体很小,不然以前不会注意不到它)。它说,可以使用GET http://nanwich.info/cron.php(很明显,使用你自己的URL)。我照着做了,错误信息没了,Cron完全正常工作了。
对于Cron任务,另一个可选的是http://drupal.org/project/poormanscron里的poormanscron模块。
每当一个页面被访问时,这个模块都回检查Cron的最近运行时间,如果超过了1小时的话(这个时间可以配置),将会调用Cron钩子,这样Drupal就高兴了。只有当所有的HTML返回给浏览器以后,才会触发这些钩子,所以对于用户来讲,不会有任何延迟。
相关链接:http://drupal.org/node/120625, Think in Drupal
使用你的hostmonster帐号登录到cPanel接口界面,将页面下拉到底部,查看高级选项部分.