重定向多个链接的规则

时间:2011-10-09 19:58:09

标签: .htaccess url redirect

嗨,我现在正在迁移一个网站。我有大约需要重定向的400个链接。我知道如何在每个人的htaccess中设置一个重定向,但是想要建立一个规则。我想要

www.example.com/2011/10/the-news-post

重定向到

www.example.com/home/post/the-news-post

有可能这样做吗?如果是这样,代码是什么样的?

谢谢,

格里

1 个答案:

答案 0 :(得分:0)

为了保留连字符:

RewriteRule ^[0-9]{4}/[0-9]{1,2}/([^/]+)$ [R=302,L]

为了将连字符更改为下划线(我也不建议这样做):

RewriteRule ^([0-9]{4}/[0-9]{1,2}/[^/]+)-([^/]+)$ $1_$2 [N]
RewriteRule ^[0-9]{4}/[0-9]{1,2}/([^/]+)$ home/$1 [R=302,L]

简要说明: 第一个规则匹配任何带有日/月的URL,后跟包含连字符的文章。它取代了连字符,然后重新运行所有重写规则。一旦没有连字符,它将传递给第二个规则,该规则将URL重写为home / articlename。

演示:http://cerebraldonkey.com/mod_rewrite2/2011/5/some-article-containing-several-hyphens