在.htaccess文件中创建最佳301重定向

时间:2014-08-09 11:03:06

标签: php .htaccess url mod-rewrite redirect

基本上在我的网站上,我正在将所有网址重新构建为新格式。这意味着我需要添加一些301重定向。

每个网址由多个网页组成,因此您拥有网址的主页:http://domain.com/title-of-url/id.html

然后当他们在页面中递增时:http://domain.com/title-of-url/id/pagenumber.html

新结构将是这样的。 主页网址:http://domain.com/title-of-url/ 增量网址:http://domain.com/title-of-url/pagenumber

我只计划301重定向所有主页网址,这些网址大致叠加了大约150个网址。

我知道如何做标准301重定向(我认为):     重定向301 /title-of-url/id.html / title-of-url

只是想知道是否有更好的方法而不是在我的htaccess中添加150多条线?

1 个答案:

答案 0 :(得分:2)

由于您的网址似乎遵循固定的结构,因此您可以非常轻松地使用mod_rewrite。

RewriteRule ^([^/]+)/[0-9]+\.html$ /$1 [R,L]
RewriteRule ^([^/]+)/[0-9]+/([0-9]+)\.html$ /$1/$2 [R,L]

在测试规则按预期工作后,将R标记更改为R=301以使重定向永久化。不要使用永久重定向进行测试,因为浏览器会缓存永久重定向,因此在测试时会很难使用。