Wordpress 网址到 Xenforo 网址 - 通过 htaccess 重定向

Wordpress urls to Xenforo urls - Redirect via htaccess

我需要在 wp 迁移后将我所有的旧 url 重定向到 xenforo,我已经这样做了,但没有用。

当它将旧网址重定向到我的新 xenforo 时,它会导致错误 "not found",因为 xenforo 的所有网址在网址末尾都有数字或 ID。

wp 旧网址:

https://www.example.com/posts/my-new-urls-for-me/

xenforo 新网址:

https://www.example.com/threads/my-new-urls-for-me.1824/

我需要一些帮助才能正确无误地重定向。

XenForo URLs 依赖 URL.

末尾的数字 ID

因此在您的示例中,https://www.example.com/threads/my-new-urls-for-me.1824/ ... 1824 很重要。

my-new-urls-for-me 部分是无关紧要的,你可以直接使用 https://www.example.com/threads/any-thing-you-like-in-this-part.1824/ 并且它仍然会重定向到同一个线程,只要末尾的数字部分是完整的。

更具体地说,您也可以只使用数字部分 https://www.example.com/threads/1824/,它仍然有效。

你不能做的是依赖文本部分 - 不是没有自定义编码。

要从 WordPress URL 重定向到 XenForo URL,您需要知道:

  1. 原始 WordPress slug(my-new-urls-for-me 部分)
  2. 它被移动到的相应 XenForo 线程 ID(1824 部分)

然后重定向就变成了一个简单的事情,即匹配那个 slug,然后重定向到具有那个 id 的线程。

如果您在迁移时没有这样做,您现在需要手动执行 - 生成一个 table 段和线程 ID,并将其用作重定向脚本的查找.

除非迁移的页面不超过几十个,否则我建议不要尝试单独使用 .htaccess,而是使用数据库 table 并编写一个简单的脚本来进行重定向通过匹配传入的 slug,在 table 中找到该条目,在 XenForo 中检索相应的线程 ID,然后重定向到具有该 ID 的线程。