0

我想使用 .htaccess 重定向这些示例:

example.com
example.com/forum
www.example.com
www.example.com/forum

对此:

forum.example.com

我写这个:

RewriteCond %{HTTP_HOST} !^forum\.example\.com$ [NC]
RewriteRule ^ http://forum.example.com [R=301,L]

这很好,但我想在 url 中保留文件名和参数。所以我把它改成这样:

RewriteCond %{HTTP_HOST} !^forum\.example\.com$ [NC]
RewriteRule ^(.*)$ http://forum.example.com/$1 [R=301,L]

没关系,例如当我转到这个网址时:

http://example.com/viewforum.php?f=2

重定向到:

http://forum.example.com/viewforum.php?f=2

但是当我这样做时:

http://example.com/forum/viewforum.php?f=2

重定向到这个:

http://forum.example.com/forum/viewforum.php?f=2

但这个目标网址不正确,必须是这样的:

http://forum.example.com/viewforum.php?f=2

如何解决?

谢谢

4

1 回答 1

1

像这样的东西怎么样:

RewriteCond %{HTTP_HOST} !^forum\.example\.com$ [NC]
RewriteRule ^(?:forum\/)?(.*)$ http://forum.example.com/$1 [R=301,L]
于 2013-02-08T18:31:43.540 回答