在Drupal6多站点安装中,让cron只在请求的站点上运行的最佳方式是什么?转到http://www.mysite.com/cron.php会得到一个404。
发布于 2010-08-10 05:29:07
cron.php是正确的方式,即使在多站点安装中也是如此: Drupal检查HTTP_HOST以查看要引导到哪个站点。您在评论中提到它已被重命名:除了重命名或在重命名的文件上运行cron作业外,您还可以从状态报告页面或通过Drush运行它:
/usr/bin/php /path/to/drush.php -v -l http://example.com -r /path/to/drupal/ cron或者简单地说
drush -l http://example.com cron如果您为cron设置了正确的路径。
发布于 2010-08-09 22:17:30
我认为您的答案是使用hook_cron()钩子做一些事情。您可以在数据库查询中指定站点。
下面是一些实现它的代码:
<?php
function hook_cron() {
$result = db_query('SELECT * FROM {site} WHERE checked = 0 OR checked
+ refresh < %d', time());
while ($site = db_fetch_array($result)) {
cloud_update($site);
}
}
?>从http://api.drupal.org/api/function/hook_cron窃取
我知道这不是你想要的答案,但我认为它的方向是正确的。我在drupal工作了一周。我想我喜欢它;)
https://stackoverflow.com/questions/3440267
复制相似问题