【问题标题】:CakePHP and VirtualDocumentRoot issueCakePHP 和 VirtualDocumentRoot 问题
【发布时间】:2012-05-10 15:48:44
【问题描述】:

我有一个 LAMP 服务器,在 Apache2 配置文件中将 DocumentRoot /var/www 更改为 VirtualDocumentRoot /var/www/%-3/ - 这允许我自动将 /var/www/<subdomain> 映射到 <subdomain>.example.com

我目前正在学习CakePHP (2.x),Cake 在目录/var/www/foo/;我注意到 URL 没有正确重定向,并且正在尝试解决此问题;根据http://bit.ly/KmEhHl,我已将默认 .htaccess 文件修改为(除其他外):

RewriteBase /cake
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/$1 [L]

但这会引发 500 内部服务器错误 - 检查 Apache2 的 error.logrewrite.log,这是因为 .htaccess 导致无限重定向,并将 app/webroot 附加到 URI。

根据我的理解,这里的L 标志应该表示“最后一条规则”——我假设这个错误是由于我对mod_rewrite 的理解不足,但我不确定具体发生在哪里。错误是否是由于此设置的其他一些潜在问题?我知道已经有几个问题,如果我能找到任何新信息,我会更新。任何帮助将不胜感激!

【问题讨论】:

标签: .htaccess cakephp mod-rewrite apache2


【解决方案1】:

找到答案了!

完整的答案由用户“kostasz”在 cmets 中http://bit.ly/NSDWE2 提供。

提示确实是无限重定向 - 使用 RewriteBase /cake 不是正确的基本 URL。

要解决此问题,请将RewriteBase / 添加到//app//app/webroot/ 中的每个.htaccess 文件中。

【讨论】:

  • 结合显式添加 AllowOverride All
猜你喜欢
  • 2016-09-12
  • 1970-01-01
  • 2014-02-24
  • 2011-05-03
  • 2014-10-02
  • 2012-09-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多