rmens
1
各位 Discourse 用户大家好,
我将一个大型的 bbPress 论坛迁移到了 Discourse,运行效果很好。不过,现在出现了许多 404 错误,似乎都来自 Google 索引的页面。这看起来与分页话题有关。
旧 URL 格式:https://forum.xxx.nl/t/---topicname---/page/33/(bbPress 风格)
新 URL 格式:https://forum.xxx.nl/t/---topicname---?page=33(Discourse 风格)
我原以为可以通过“永久链接规范化”来解决这个问题。因此我添加了以下正则表达式:/(t\\/[^\\/]*)\\/page\\/(\\d+)\\/?/\\1?page=\\2。但似乎没有任何效果。bbPress 风格的 URL 仍然显示 404,且似乎未被规范化。
请问是我操作有误,还是“永久链接规范化”并非解决此问题的正确工具?欢迎提供任何建议。非常感谢!
RGJ
(Richard - Communiteq)
2
这不是正确的 Discourse URL,正确的应该是:
新的 URL 样式:https://forum.xxx.nl/t/---topicname---/TOPICID?page=33(Discourse 风格)
此外,你还需要建立从 bbPress 主题 slug/页码到 Discourse 主题 ID/帖子编号的映射。
从 bbPress 主题 slug 到 Discourse 主题 ID 的映射已包含在导入器中,因此你需要在此基础上进行扩展。这意味着需要编写一些代码,基于现有的主题永久链接创建额外的(帖子)永久链接。
例如,如果 /t/blah 映射到主题 #123,那么:
/t/blah/page/2 将映射到 /t/slug/123/20
/t/blah/page/3 将映射到 /t/slug/123/40
以此类推。