htaccess 301重定向正则表达式

时间:2016-10-28 17:30:36

标签: regex .htaccess mod-rewrite

我正在尝试301重定向此格式或网址

mydomain.com/texas/

RewriteRule ^/map-of(.+)  mydomain.com /$1 [R=301,L]

我有很多州和城市的网址都有这种模式所以我需要一个正则表达式规则,但我似乎无法正确使用正则表达式语法。

我用过这个和类似的东西。我做错了什么?

nonce

1 个答案:

答案 0 :(得分:0)

^匹配网址路径部分的开头,但在您的示例中" map-of"不在网址的开头。此外,mod_rewrite路径不是以/开头,而是直接使用url路径。

一个mod_rewrite规则,用于重写包含" map-of - "的所有网址。看起来像这样:

RewriteRule (^|/)map-of-(.+?)(/|$)  /$2 [R=301,L]

?表示匹配不是"贪心"。

重写规则重定向以下类型的网址

mydomain.com/texas/map-of-texas/
mydomain.com/texas/map-of-texas/123
mydomain.com/map-of-texas

mydomain.com/texas