我正在自托管一个 Discourse 实例,刚刚切换到了一个国际化域名(非拉丁字符)。想分享几点让这次切换比预期更曲折的因素:
首先:ask.discourse.com 错误地告诉我需要在 app.yml 中使用该名称的 Unicode 版本,但这导致 Let’s Encrypt 需要在容器中安装 idn 软件包,然后由于我的浏览器请求该名称的 Punycode 版本而 Discourse 持续重定向到 Unicode 版本,从而导致重定向循环。
然后,虽然不太重要,但在一切正常后更明显:Discourse ID 在其即将重定向的通知中在屏幕上输出了该名称的 Punycode 版本。用户看到这种情况会更安心。