0

我的 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

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

4

1 回答 1

0

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

<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>
于 2012-07-27T10:34:23.727 回答