.htaccess重写规则,用于删除路径中的数字id

时间:2015-01-11 08:47:25

标签: .htaccess mod-rewrite

我有一个超过10年的旧网站,有很多外部链接。

网址格式类似于top-level/show/12345/text-name

我正在升级系统,新系统支持更多用户友好的URL,没有12345数字ID,如; top-level/show/text-name

我计划迁移保留文字名称的现有内容。

如何在.htaccess中指定删除路径中的/12345级别? 12345可以是任意数字,数千。

1 个答案:

答案 0 :(得分:0)

更改您网站上的所有旧网址,只要它们尚未自动更改。确保启用mod_rewrite并允许其工作(必须允许FollowSymLinks)。然后添加以下规则:

RewriteEngine on
RewriteRule ^show/[0-9]+/([^/]+)/?$ show/$1 [R,L]

在您测试重定向按预期工作后,将R标记更改为R=301。更改此项将标记为永久重定向。您还可能想要提醒任何用户他们应该更新他们的书签。