如何让Kohana拨打特定的控制器?

时间:2010-11-11 13:41:48

标签: kohana controllers

我的路由设置如下:

Route::set('default', '(<controller>(/<action>(/<id>)))')
->defaults(array(
    'controller' => 'static',
    'action'     => 'index',
));

以便输入:

  

http://localhost/et/testkohana4/

action_index上调用Controller_Static

但是,当我输入时:

  

http://localhost/et/testkohana4/test

我希望它说“找不到Controller_Test ”但是Kohana错过了它,我收到了来自Apache的消息“请求的URL /testkohana4/index.php/test在此服务器上找不到。

即使我在名为controller的{​​{1}}目录下放入一个文件,其中包含test.php类,我仍然会收到页面未找到错误。

当我在网址中输入名称时,如何让Kohana调用特定的控制器?

1 个答案:

答案 0 :(得分:2)

编辑:此答案评论中提供的正确解决方案是将.htaccess RewriteBase值更改为

RewriteBase /et/testkohana4/

(<controller>(<action>(/<id>)))

你的路线有误。 (<action> ...开头没有正斜杠,应为(/<action> ...

这些<blocks>是网址中的动态细分。所以在这个例子中:

http://localhost/et/testkohana4/test

会导致这被调用:

  • 控制器:et
  • 行动:testkohana4
  • ID :test

这对你有用。希望有所帮助。