URL 中包含日语的主题,若 URL 不完全匹配则不会重定向

我们遇到了同样的问题,@Falco 昨天已经修复了这些问题。

您应该升级您的 Discourse 安装(通过 https://myforum.example.com/admin/upgrade),升级后您需要“重新烘焙”(rebake)URL 别名。您可以按照 @Falco 的指示操作:

这些指示对我们来说完全有效 :D(顺便感谢 @Falco!)

5 个赞

该解决方案已修复了问题,我需要重新生成 slug。___

朋友 @Falco,非常感谢您为解决此问题付出的巨大努力。

同时也感谢 @codinghorror @sam 以及所有其他为 Discourse 这样免费的项目奉献多年经验、让互联网变得更美好的人们。谢谢你们。

我们感激你们的付出。

8 个赞

感谢 @Falco 和 Discourse 团队的修复 :rose:

将 slug 生成方式改为 encoded 后,404 主题问题得到了解决(无需重新生成 slug)。

但我们仍然遇到了“分类未找到”的问题,我在测试环境的 Discourse 上尝试了各种方法,以确保不会搞砸 :grin:

问题描述

  1. 当我将 slug 生成方式改回 ascii 时:

分类恢复正常,其生成的 URL 也完全正确(阿拉伯语,符合预期):

https://discourse.coretabs.net/c/%D8%A7%D9%84%D8%A3%D8%B3%D8%A6%D9%84%D8%A9-%D9%88%D8%A7%D9%84%D8%A7%D8%B3%D8%AA%D9%81%D8%B3%D8%A7%D8%B1%D8%A7%D8%AA

但是,主题生成的 URL 却是英文的(尽管标题实际上是阿拉伯语),例如:

https://discourse.coretabs.net/t/5-mktbat-baythwn-mfydt-lmsharye-telym-alalt/2930/5
  1. 当我将 slug 生成方式改为 encoded 时:

分类无法访问(显示“哎呀!该页面不存在或是私有的”),尽管其生成的 URL 完全正确(阿拉伯语,符合预期):

https://discourse.coretabs.net/c/%D8%B9%D8%A7%D9%85

而主题可以正常访问,其 URL 也是预期的阿拉伯语格式:

https://discourse.coretabs.net/t/5-%D9%85%D9%83%D8%AA%D8%A8%D8%A7%D8%AA-%D8%A8%D8%A7%D9%8A%D8%AB%D9%88%D9%86-%D9%85%D9%81%D9%8A%D8%AF%D8%A9-%D9%84%D9%85%D8%B4%D8%A7%D8%B1%D9%8A%D8%B9-%D8%AA%D8%B9%D9%84%D9%8A%D9%85-%D8%A7%D9%84%D8%A2%D9%84%D8%A9/2930/5

解决方案

  1. 将 slug 生成设置改为 ascii
  2. 在每个分类页面中将分类 slug 改为英文
  3. 将 slug 生成设置改为 encoded
  4. 现在你可以将分类 slug 改为你选择的语言
5 个赞

当我分享链接到其他网站时,链接会变成:

E0%AE%AE%E0%AE%BF%E0%AE%A9%E0%AF%8D%E0%AE%A9%E0%AE%B2%E0%AF%8D-%E0%AE%B5%E0%AE%BF%E0%AE%B4%E0%AE%BF%E0%AE%AF%E0%AF%87-%E0%AE%95%E0%AF%81%E0%AE%9F%E0%AF%8D%E0%AE%9F%E0%AE%BF%E0%AE%A4%E0%AF%8D-%E0%AE%A4%E0%AE%BF%E0%AE%AE%E0%AE%BF%E0%AE%B0%E0%AF%87-2/1154/3

URL 中的编码没有问题:

image

但当我复制并粘贴该 URL 到其他地方时,它变成了:

我已将 Discourse 升级到最新版本:

并像 @Falco 提到的那样重新生成了 slug。但我仍然遇到同样的问题。:frowning:

这不是问题,而是预期行为。

许多地方不支持 IRI(包含“特殊”字符的 URL),因此我们会对这些字符进行编码(即那些大量的 %XX),以确保它们能在任何地方正常工作(例如发布到 Twitter 时)。

您的浏览器足够智能,会自动为您显示解码后的内容,因此您无需在地址栏中盯着原始编码查看。

10 个赞

谢谢你为我解惑!@Falco :slight_smile:
我会在分享之前使用 URL 缩短服务。

3 个赞

community.wanikani.com 上的几位用户已经注意到原始问题的修复,在我看来效果也不错。不过,我仍然遇到了其他人提到的子分类问题(包含 Unicode 字符的子分类返回 404 错误)。由于这是一个托管网站,能否请某人部署最新的修复并重新构建(如有必要),以便我可以验证问题是否已完全解决?如果不能,我想我一周后再来检查。

1 个赞

好的,我们可以下周初安排。

3 个赞

我认为你需要按照这里提到的方法进行修复:

3 个赞

您的站点已部署到最新版本,且 URL 别名已重新生成。

4 个赞

正如我上面提到的,我的问题似乎已经解决了,:roll_eyes: 但我发现带有“重音符号”的“分类”虽然可以显示,但无法加载第二页。:unamused:

我的 slugsencoded 格式的。

如果我手动编辑分类名称并移除重音符号,就能按预期工作;否则就无法正常工作。

1 个赞

请务必再次更新到最新版本,因为子分类在上周五已收到修复。请访问 /admin/upgrade 进行更新。

3 个赞

此主题已在 7 小时后自动关闭。不再允许新的回复。