我需要使用.htaccess
将旧域重定向到新域情况:
www.oldodmain.com/en/categoryA/product1
www.newdomain.com/en/categoryB
结果我正在努力实现
www.newdomain.com/en/categoryB/categoryA/product1
尝试使用此代码:
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^(www\.)?voniospasaulis\.lt$ [NC]
RewriteRule ^.+$ http://www.visaslabas.lt/lt/vonios-iranga/%{REQUEST_URI} [L,R=301]
但我得到的结果如下:
www.newdomain.com/en/categoryB/en/categoryA/product1
我需要摆脱/en/before/categoryA
来获取这样的网址:
www.newdomain.com/en/categoryB/categoryA/product1
答案 0 :(得分:0)
您的规则模式必须以en/
开头,并且应该在en/
$1
之后捕获您可以在目标中使用的值:
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^(?:www\.)?oldodmain\.com$ [NC]
RewriteRule ^en/(.+)$ http://www.newdomain.com/en/categoryB/$1 [L,NE,NC,R=301]
另请注意,我已回答使用虚拟域名而不是您所查询的实际域名。
确保清除浏览器缓存或使用新浏览器进行测试。