Drupal中文教程:设定Cron
向你的drupal网站加点东西
偶尔,除了内容以外,你还需要更新一些其它东西,比如样式表,或者新的代码.
FTP是File Transfer Protocol(文件传输协议)的缩写.这是一个相当标准的方式,来向你的站点添加文件,代码,样式表等等这样的东西.此时你创建的不是站点的内容,内容都是保存到Drupal的数据库中的.
现在,Drupal官方站点中的帖子会告诉你有哪些好用的FTP程序。如果你用的还是Windows 2000的话,你根本不需要FTP软件。你可以使用Windows,它看起来就像一个文件夹一样,你可以进行拖拽。如果你使用的浏览器是IE的话,这一过程非常方便。
在你IE浏览器的地址栏中,输入ftp:username:password@ftp.domain.com,其中username是你的站点的用户名(不是Drupal里的),password是该用户的密码,domain.com是你站点的域名(不带www)。
这样你就可以看到你站点上的文件了。在Linux中,你可能需要点击"public_html"文件夹,来找到相应的Drupal文件。接下来,找到对应的文件夹,将更新后的文件上传上去就可以了。
设定Cron
在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返回给浏览器以后,才会触发这些钩子,所以对于用户来讲,不会有任何延迟。