重定向到错误的相对地址

时间:2010-06-01 22:39:22

标签: cakephp redirect .htaccess

我有一个问题,没有得到正确的相对网址。

现在,请说我的主页位于

http://www.example.com/user/home

主页上的链接应该转到:

http://www.example.com/user/home/page1

但我得到了:

http://www.example.com/page1

一切都在当地有效。可以通过修改.htaccess来解决这个问题吗?谢谢。

PS。我可以编辑索引页面上的链接以转到正确的地址,但是一些内部函数(如登录)仍然会转到错误的位置

4 个答案:

答案 0 :(得分:0)

检查页面上是否有任何基本标签。

  

标签指定页面上所有链接的默认地址或默认目标。

http://www.w3schools.com/tags/tag_base.asp

答案 1 :(得分:0)

我不知道CakePHP,但我知道URL和:

/user/home + page1 => /user/page1

然而:

/user/home/ + page1 => /user/home/page1

浏览器有责任确定相对路径(假设您刚刚将链接放入页面中),而不是Cake的。

我需要查看一些代码才能更好地了解您的情况。

答案 2 :(得分:0)

我认为您必须在.htaccess文件中设置RewriteBase,请参阅http://book.cakephp.org/view/37/Apache-and-mod_rewrite-and-htaccess和Apache文档。

答案 3 :(得分:0)

你没有给我们很多东西。

CakePHP中的控制器名称通常是复数:'用户'不是'用户'。如果您正在使用帮助程序来编写URL,那么可能由于这个原因,Cake无法找到它们并且默认为webroot。

来自.ctp文件的代码片段真的可以帮助我们(如果你改变了它还有routes.php)。