2016-01-21 43 views
3

我们有几个网址并希望根据其中一个网段重新定向。重定向并更改单个网址段

通常我们已经有重写规则则是这样的:

redirect permanent /home/category/feline /home/category/cat 

的挑战是有像50+的URL和段改变,所以我想知道是否有一个更简单的方法来匹配并重定向?

下面是几个例子:

redirect permanent /home/category/feline /home/category/cat 
redirect permanent /content/category/feline /home/category/cat 
redirect permanent /channel/segment/category/feline /channel/segment/category/cat 
redirect permanent /segment/category/feline/entry /segment/category/cat/entry 

是可能的任何URL重定向与猫对猫?

我目前正在测试以下,这工作,但想澄清:

RewriteRule (.*)feline(.*)$ $1cat$2 [R=301,NE,L] 

回答

2

您可以使用RedirectMatch用正则表达式的支持:

测试该规则之前
RedirectMatch 301 ^(.*/)?feline(/.*)?$ $1cat$2 

清除浏览器缓存。

使用mod_rewrite

RewriteEngine On 
RewriteRule ^(.*/)?feline(/.*)?$ /$1cat$2 [R=301,NE,NC,L] 
+1

这些都工作,感谢@anubhava – paulcripps