url中的htaccess条带部分

时间:2018-08-02 20:28:33

标签: apache .htaccess mod-rewrite

我有一个重写规则,可重定向

之类的特定路径

http://mev-hongkong.com/product/boardwalk-long-shorts/https://mothersenvogue.com.hk/product/boardwalk-long-shorts/

所以我的规则看起来像这样

RewriteCond %{HTTP_HOST} ^(www\.)?mev-hongkong\.com$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^product/boardwalk-long-shorts(/.*)?$ https://mothersenvogue.com.hk/product/boardwalk-long-shorts$1 [L,R=301,NC,NE,QSD]

我也有一个相同路径的URL,但是区别在于它的末尾像是“ -2”

http://mev-hongkong.com/product/boardwalk-long-shorts -2 /

我应该在原始URL上包含什么规则,以便我可以在旧域上捕获“ -2”?

我试图像这样使我的RewriteRule(在斜杠前添加.*),但是没有用。

 RewriteRule ^product/boardwalk-long-shorts(.*/.*)?$ https://mothersenvogue.com.hk/product/boardwalk-long-shorts$1 [L,R=301,NC,NE,QSD]

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用以下规则:

RewriteCond %{HTTP_HOST} ^(www\.)?mev-hongkong\.com$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^product/boardwalk-\w+-shorts(?:-[^/]+)?(/.*)?$ https://mothersenvogue.com.hk/product/boardwalk-long-shorts$1 [L,R=301,NC,NE,QSD]

(?:-[^/]+)?使-2/成为可选匹配项