【问题标题】:.htaccess trouble with cakephp and addon domaincakephp 和插件域的 .htaccess 问题
【发布时间】:2014-10-24 19:41:57
【问题描述】:

我正在尝试将带有自己网站的插件域添加到我的主机帐户中,该帐户已经设置了 cakephp。

我在插件域上遇到 500 错误,但我设法使用以下解决方案将其删除:http://expertsoverflow.com/questions/21345626/htaccess-addon-domain-issue-gives-500-error

现在我的 .htaccess 文件如下所示:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^maindomain\.co.uk [NC] 
RewriteRule    ^(.*)$ app/webroot/$1 [L]

RewriteCond ^seconddomain\.report [NC]
RewriteRule    (.*) http://seconddomain.report/$1 [L]
</IfModule>

现在我的插件域按预期工作,但我的主域没有正确地将图像/文件请求转发到 app/webroot 文件夹,因此没有图像和 css 正在加载,并且没有页面超过第一个索引。

作为参考,最初的 cakephp .htaccess 文件是:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule    ^$ app/webroot/    [L]
RewriteRule    (.*) app/webroot/$1 [L]
</IfModule>

感谢任何帮助。

编辑:我的文件夹结构:

主域: /public_html/ /public_html/app/webroot/

第二个域: /public_html/seconddomain/

【问题讨论】:

  • 你的第二个条件毫无意义。
  • 您能否在浏览器中转到开发者控制台,然后转到网络选项卡并重新加载缺少图像和 css 的页面。检查它尝试为图像/css 加载的 url 以及它给出的返回码。
  • 感谢 Sumurai8,我删除了第二行,它继续工作。尝试加载的文件是 maindomain.co.uk/css/normalize.css,这是正确的,但在服务器上的文件夹文档中,我需要它们指向 maindomain.co.uk/app/webroot/css/normalize.css(不向访问者显示此 URL)。

标签: apache .htaccess cakephp mod-rewrite


【解决方案1】:

我设法通过更改插件域的目录来解决这个问题。

插件域现在不在 /public_html/seconddomain/ 中,而是在根目录中的 /seconddomain/。然后我只是在 /public_html/ 文件夹中使用 cakephp 的标准 .htaccess 文件。

【讨论】:

    【解决方案2】:

    我知道已经很晚了,但我找到了解决办法。

    在主 .htaccess 文件中添加重写规则:

      <IfModule mod_rewrite.c> 
            RewriteEngine on 
            RewriteCond %{HTTP_HOST} seconddomain.report
            RewriteRule seconddomain.report/ - [L] 
    
            RewriteEngine on 
            RewriteRule    ^$ app/webroot/    [L] 
            RewriteRule    (.*) app/webroot/$1 [L] 
       </IfModule> 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-11-01
      • 2012-04-20
      • 1970-01-01
      • 1970-01-01
      • 2012-04-12
      • 2011-09-28
      • 2011-07-07
      相关资源
      最近更新 更多