Kohana 3和CRON总是访问index.php(不遵循URI参数)

时间:2010-03-19 01:29:02

标签: php cron kohana kohana-3 cpanel

好的,我希望这是我关于CRON工作和Kohana 3的最后一个问题。注意:其他问题不是重复,只是其他问题。

这是我的CRON作业(在cPanel中设置)

php /home/user/public_html/index.php --uri=properties/update

根据this answer

我已将其设置为通过电子邮件将输出发送给我。它每5分钟运行一次。

不幸的是,它总是通过电子邮件向我发送我网站主页的来源(index.php或/)。

我可以在浏览器中正常访问该网址,即http://www.example.com/properties/update,它可以正常工作并正常工作。我可以告诉Cron从来没有打过剧本,因为我有一个file logger

这与.htaccess有什么关系?

之前是否发生过这种情况,他们是如何解决的?

非常感谢。

更新

如果有人有兴趣,这是bootstrap.php中的主路线。

Route::set('home', '')
    ->defaults(array(
    'controller' => 'home',
    'action' => 'index'
    ));

这是第一条定义的路线。

另一次更新

奇怪的是,var_dump(Kohana::$is_cli);在从CRON发来电子邮件时会产生false

2 个答案:

答案 0 :(得分:5)

如果其他人有这个问题,花了好几个小时试图解决这个问题,我最终发现不是使用(使用你的例子)

php /home/user/public_html/index.php --uri=properties/update

我必须使用

/usr/local/bin/php -q /home/user/public_html/index.php --uri=properties/update

php 的确切路径可能有所不同,但没有使用它,它没有使用CLI,虽然我不完全确定,但认为它是CURLING it。

我还发现在调用那些时我也必须明确说明索引操作;它们不被称为控制器的默认操作(虽然奇怪的是,在调用 之前)。

答案 1 :(得分:0)

更新您的路线:

Route::set('home', '<>')
    ->defaults(array(
    'controller' => 'home',
    'action' => 'index'
    ));

或:

Route::set('home', 'properties/update')
    ->defaults(array(
    'controller' => 'home',
    'action' => 'index'
    ));