htaccess 重定向到带有路径和参数的新域

SPR*_*BRN 2 apache .htaccess mod-rewrite

我需要将一个文件夹的所有流量重定向到一个新域。设置如下:

  • 原始站点有一个文件夹“admin”,其中包含 .htaccess 文件(请参阅下面的我的重写规则)
  • 所有流量都应该流向另一个站点
  • 应保留路径和参数

我制定了以下重写规则:

RewriteEngine on
RewriteRule     (.*)      http://admin.testsite.com/admin/$1 [R=301,L]
Run Code Online (Sandbox Code Playgroud)

这适用于参数,但不适用于路径。以下网址不会重定向:

www.oldsite.com/admin/account/?test=3
Run Code Online (Sandbox Code Playgroud)

我怎样才能得到这个网址重定向到admin.testsite.com/admin/account/?test=3


注意:在根目录中还有另一个 .htaccess,其规则如下:

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /users/index\.php\?file=(.+)&group=(.+)\ HTTP/
RewriteRule ^users/index\.php$ /users/%1/%2\.html? [L,R=301]
Run Code Online (Sandbox Code Playgroud)

这会影响其他规则吗?

sal*_*h-1 5

这是官方的回答。

问题是:“如何将 www.oldsite.com/admin/account/?test=3 重定向到 admin.testsite.com/admin/account/?test=3?”

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteRule ^/admin/(.*)$  http://admin.testsite.com/admin/$1 [R=301,L]            
</IfModule>
Run Code Online (Sandbox Code Playgroud)