所有插件因最近升级后的 CORS 错误而无法运行

自上周起,所有插件(包括核心插件和已安装的插件)在启用状态下也无法在我们的论坛中正常运行。起初,我以为这与之前提到的 bug 有关(https://meta.discourse.org/t/fix-compile-missing-rollup-plugin-bundles-on-demand-in-development/398864/8),但此后我们已多次执行更新,问题仍未解决。我尝试启用一个此前未使用过的插件(预装的“用户笔记”插件),但发现无法为任何用户添加笔记。甚至连 Docker 管理器也已停止工作,导致所有更新都必须在服务器层面执行,这意味着只能由一人来应用更新,而无法由管理员团队共同协作。

我尝试寻找解决方案,但所找到的内容大多仅涉及“插件被自动禁用”等类似问题,与我们的具体情况并不完全吻合。

能否请各位提供可能的解决方案或建议我们应尝试的方向?我们希望能避免回滚操作,但目前看来这可能成为最后的选择。

一如既往感谢大家的支持!:smiley:

1 个赞

嗯。这看起来是您的 CDN 的问题:


我启用了我的 CORS 忽略插件,脚本成功加载了,但我没有从插件中看到任何可见的变化。我建议您尝试一下,如果有效,您应该能找到导致 CDN 错误的原因。

7 个赞

非常感谢您抽出时间为我们调查此事。我们将在本周末进行一些测试,并在有进展时更新。

3 个赞

我在 BunnyCDN 上也遇到了同样的问题。在最近一次更新之前,一切运行正常。

我尝试按照此处描述的方法,在 bunny.net 的 CORS 头中添加 .js

与当时的情况一样,我不明白为什么在我上周升级到 6800ad3adf3ef9c3caeb9a4d849997c7a3dc98d7 后会出现这个问题。

2 个赞

谢谢 Jay,我们已经解决了 Bunny 的问题,您提到的修复方案也彻底解决了所有问题!感谢您和所有人在此事上提供的帮助与支持,我们的论坛已恢复正常。至少是尽可能正常了 :smiley:

1 个赞

很高兴听到您已经解决了问题!

在新的插件系统中,我们使用 script type="module",这需要设置正确的 CORS 头。旧式的 script type="text/javascript" 不需要这些头。

过去几年里,我们一直在逐步将不同系统迁移到 type="module"。主题早已在使用它,highlightjs 也是如此(另一个主题中提到的那个)。从 CDN 加载字体也有 CORS 要求。

因此,在最近的插件系统更改之前,可能已经有一些其他问题被微妙地破坏了。现在您已经设置了 CORS 配置,一切应该都能正常工作了:chefs_kiss:

2 个赞

啊哈。这确实是我没想到的。