【问题标题】:stop htaccess from ignoring阻止 htaccess 忽略
【发布时间】:2012-07-25 22:53:11
【问题描述】:

我的 htaccess 文件正在做噩梦...我有一个停放的域名,我想将所有内容重定向到 public_html 内的子文件夹 所以我用了这段代码

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?parked\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/foo/
RewriteRule ^(.*)$ /foo/$1 [L,NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
</IfModule>

它现在工作完美,它重定向www.parked.com =它显示> public_html/foo 内容但在 public_html 文件夹内我还有一个名为 admin 的文件夹和内部文件夹 foo 我还有一个名为 admin 的文件夹

  • public_html/admin
  • public_html/foo
  • public_html/foo/admin

问题是每次我尝试访问 www.parked.com/admin 时,它都会显示 public_html/admin 文件夹而不是 public_html/admin p>

我想要它做的是将 www.parked.com 完全重定向到 public_html/foo 并忽略 public_html 中的文件

【问题讨论】:

  • 你能把rewrite log放在这里吗?

标签: .htaccess redirect dns subdirectory


【解决方案1】:

你为什么要在规则的末尾加上条件?这应该工作:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?parked\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/foo/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /foo/$1 [L,NC]
</IfModule>

【讨论】:

    猜你喜欢
    • 2015-10-19
    • 2020-05-30
    • 2015-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-28
    • 2023-03-14
    • 2012-01-16
    相关资源
    最近更新 更多