htaccess 从旧论坛 url 到新论坛

htaccess from old forum url to new one

直到现在,我一直使用 htaccess 重写 URL,以便将非 SEF url 转换为 SEF url。

今天面临新的挑战,老实说,对正则表达式没有信心,我真的不知道如何实现。

我的网站上的一个论坛已更新为以下形式:

上一个 link: www.domain.com/forum3/topic/name-of-topic/post/7548

新 link: forum.domain.com/Topic-name-of-topic/

如何拦截 /post/37764 字符串并告诉 htaccess 不考虑它?

以及如何指示服务器构建那种 url 而不是 provious。我对此很困惑。

有什么建议吗?非常感谢你。有什么资源可以帮助我更好地理解这个案例吗?

再次感谢。

编辑

Florian 回答正确。我只是添加了一些模组以更好地适应它。

RewriteEngine On
#RewriteBase /
RewriteRule ^forum3/topic/([^/]+)/post/[0-9]+$ http://forum.domanin.com/Topic-/ [L,R=301]
RewriteRule ^forum3/topic/([^/]+)-[0-9]+$ http://forum.domanin.com/Topic-/ [L,R=301]

你可以试试这个代码:

RewriteEngine On
RewriteBase /
RewriteRule ^forum3/topic/([^/]+)/post/[0-9]+$ /Topic-/ [L,R=301]

/([^/]+)/ 表示我们要捕获一个包含一个或多个字符的字符串,除了 / 之前和之后是 /.

这个 link 可能会帮助您测试 .htaccess 文件: