刚刚推出了一个新网站。保留旧网站,但将其分配到子域。
我需要将对旧网站网址的请求转发到新的子网域。
旧网站网址都具有以下结构:" www.oldsite.com/BMT/xxxxxx" " / BMT /"直接跟随.com。
我需要我的.htaccess将这样的网址转发到" subdomain.oldsite.com"而不是" www.oldsite.com",在" / BMT /"
之后保持相同的路径没有" / BMT /&#34的任何网址;不应该重定向。
从我的研究中,我认为这可能有效
RewriteCond %{REQUEST_URI} ^/BMT http://subdomain.oldsite.com%{REQUEST_URI} [L,R=301]
我是在正确的轨道上吗?
如果是这样,我应该在当前的.htaccess中添加它?
目前.htaccess是:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
答案 0 :(得分:1)
是的,你是对的,
RewriteCond %{REQUEST_URI} ^/BMT [NC]
是一个条件,如果它匹配以/ BMT开头的请求uri字符串,则规则会将uri重定向到http://sub.domain。
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_URI} ^/BMT [NC]
RewriteRule ^(.*)$ http://sub.oldsite.com/$1 [NC,R,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress