Cakephp路由没有子目录名称

Kor*_*nel 1 cakephp

我正在开发CakePHP应用程序.当我将它上传到我的主机的public_html目录时,我已经为它创建了一个子目录.

所以现在结构是这样的:domain.com/subdircake/.

我在public_html根目录中包含了一个.htaccess文件,我已经将webroot文件夹中的index.php更改为指向子目录.

由于错误的.htaccess配置,我不知道在cakeapp或mod_rewrite问题中是否存在路由问题,但是会发生什么.

  1. 我可以访问该域,它显示该应用程序的主页.
  2. 链接指向domain.com/subdircake/action而不是domain.com/action.
  3. 当我强迫网址为domain.com/action时,它会起作用,这让我感到压力,因为我不知道为什么.

所以我认为它必须是一些重写问题,但我没有任何线索.

有人有什么想法?

Thi*_*zzi 5

上班的原因domain.com/action是你的.htaccess解决方案是有效的 - 它确实将URL重写到了正确的位置.但是,CakePHP的路由系统并不知道您对默认重写脚本所做的更改,这会导致HTML Helper生成的链接仍然指向他们无需编辑.htaccess文件的位置.

想到的第一个解决方案是改变您的App.base配置; 在Config/bootstrap.php,添加此行:

Configure::write('App.base','/');

看看是否有帮助.我建议在更改设置后彻底测试网站 - 许多CakePHP功能使用它,结果可能是意外的.