Apache 重写规则

Apache 重写规则

我将网站从 Wiki 移至 Wordpress,在此过程中,我发现网站上一些热门页面的链接已损坏。是否可以使用重写规则修复此问题?

我需要一条规则,将以“^/wiki/(.+)$”开头的任何内容重定向到“/$1”,同时将 MediaWiki slug 中使用的“_”字符替换为 Wordpress slug 中使用的“-”。

例如:

http://example.com/wiki/An_Example_Page

应该指出的是:

http://example.com/an-example-page

是否可以编写这样的重写规则?

编辑:看来 Wordpress 甚至不在乎“/wiki/”部分是否被删除 - 只要 slug 匹配,而且这似乎也不区分大小写。所以我需要做的就是将 slug 中的“_”字符更改为“-”。

答案1

我认为你应该尝试这个:

RewriteEngine on
RewriteRule ^(.*)_(.*)$ $1-$2 [N,R=301]

替换_-

相关内容