CakePHP路由没有正确重定向

时间:2014-11-27 16:24:48

标签: cakephp cakephp-2.0 cakephp-2.1 cakephp-2.3

我遇到了问题,我不知道出了什么问题。

我已经构建了一个简单的基本身份验证系统。但我注意到,侧栏中的URL与Cakephp生成的URL不同,例如:

http://localhost/sitename/users

是工具栏上显示的网址。

当我这样做时:

echo Router::url($this->here, true ); 

结果是:

http://localhost/sitename/sitename/users

该网站仍然有效,但一次又一次产生错误,例如:

http://localhost/sitename/sitename/users/ 

Missing Controller

Error:  SitenameController could not be found.

Error:  Create the class SitenameController below in file: app\Controller\SitenameController.php
<?php class SitenameController extends AppController {

}

所以我不知道是什么导致了这个问题...... 如果有人,任何人都可以帮助我,我会非常适应它......

非常感谢。

1 个答案:

答案 0 :(得分:0)

您的应用位于子目录中,因此您应该使用

Router::url(null, true);

如果$url参数为null ,则该方法将找到实际控制器/操作的地址。阅读更多here

从书中可以看出:

$this->request->here包含当前请求的完整地址。

完整地址也包括子目录。因此,如果您使用Router::url()并将$full参数设置为true,那么&#34;重复&#34;子目录。