htaccess - 将旧网址重定向到匹配正则表达式的新网址

时间:2017-11-09 04:30:32

标签: regex apache .htaccess mod-rewrite

我想将旧网址从我的网站重定向到自定义论坛的新网址(Permanent Redirect 301)。

在这种情况下,有超过10,000页。

我无法为每个现有页面执行RewriteRule。有没有办法使用正则表达式执行RewriteRule?

例如:我想将http://www.myforum.com/topic/subject-1234-hello-world之类的网址重定向到http://www.myforum.com/subject/hello-world

我试过了:

RewriteEngine on
RewriteRule ^/topic/subject-([0-9]+)-([a-z0-9-]+)$ /subject/$2 [R=301,L]

但它不起作用......

我该怎么做?

1 个答案:

答案 0 :(得分:1)

只需要逃避连字符。

您可以尝试以下规则。

RewriteEngine On
RewriteBase /
RewriteRule ^topic/subject\-([0-9]+)\-([a-zA-Z0-9-]+)$ /subject/$2 [R,L]