htaccess 301在网址的一部分更改后重定向

时间:2012-11-05 13:59:04

标签: regex apache .htaccess mod-rewrite

如何将旧网址中的网址重定向到新网址?情况就是这样:

http://www.lorem.com/ipsum/dolor/sit -> http://www.lorem.com/ipsum/dolor/amet
http://www.lorem.com/ipsum/dolor/sit/lipsum -> http://www.lorem.com/ipsum/dolor/amet/lipsum
http://www.lorem.com/ipsum/dolor/sit/vulvat -> http://www.lorem.com/ipsum/dolor/amet/vulvat
http://www.lorem.com/ipsum/dolor/sit/lol    -> http://www.lorem.com/ipsum/dolor/amet/lol

客户已将sit重命名为amet。我是否必须为每个链接创建一个重定向,或者我是否可以将sit重定向到amet以及sit下的所有页面一次转发?

1 个答案:

答案 0 :(得分:2)

您只需要一个RewriteRule来处理这个问题。

通过httpd.conf启用mod_rewrite和.htaccess,然后将此代码放在.htaccess目录下的DOCUMENT_ROOT中:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteRule ^(ipsum/dolor)/sit(/.*|)$ $1/amet$2 [L,NC,R=301]