0

我在子文件夹中托管了一个单独的站点。我在 .htaccess 文件中设置的规则如下:

RewriteCond %{HTTP_HOST} www.example.com
RewriteCond %{HTTP_HOST} example.com
RewriteCond %{REQUEST_URI} !subfolder/
RewriteRule ^(.*)$ subfolder/$1 [L]

这在 Firefox 中运行良好(example.com 重定向到 www.example.com),但在任何其他浏览器中都没有。

知道我做错了什么吗?我已经清除了缓存等,但问题仍然存在。

更新

对不起,我应该解释得更好。这里有两个站点,一个用于主文件夹,一个用于子文件夹。完整的 htaccess 文件如下。

RewriteEngine on

RewriteCond %{HTTP_HOST} ^mainsite.com [NC]
RewriteRule ^(.*)$ http://www.mainsite.com/$1 [R=301,NC]

RewriteCond %{HTTP_HOST} www.secondarysite.com
RewriteCond %{HTTP_HOST} secondarysite.com
RewriteCond %{REQUEST_URI} !subfolder/
RewriteRule ^(.*)$ subfolder/$1 [L]

第一个块用于主站点,第二个块用于辅助站点,指向子文件夹。

4

1 回答 1

0

尝试只保留一个条件并告诉我它是否有效:

RewriteEngine  on
RewriteCond %{HTTP_HOST} !^(www\.example\.com)?$ 
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301]

然后添加您的行:

RewriteCond %{REQUEST_URI} !subfolder/
RewriteRule ^(.*)$ subfolder/$1 [L]
于 2013-05-14T17:40:01.270 回答