我在一些 JS 代码上遇到了一些问题。在开发工具中(安装了一些官方插件后)我看到:
我不确定该从哪里开始调试。
在 Google 上搜索消息“Failed to register Service Worker: TypeError: Failed to register a ServiceWorker: ServiceWorker script evaluation failed”表明 JS 存在问题,但我不清楚问题出自哪里。
有人遇到过这个问题吗?
您是否在站点设置中启用了 force_https?
我不太确定它在哪里?(曾尝试通过搜索栏在设置中查找)。应该启用它吗?它有什么作用?
您的安装存在问题,看起来安装过程似乎出现了故障。
已启用并隐藏“强制 HTTPS
嗯,也许吧。@neil 你怎么看?
我参考了以下指南来启用 HTTPS:https://meta.discourse.org/t/setting-up-https-support-with-lets-encrypt/40709。
可能是该指南已过时,或者我应该使用其他指南?我在其中设置了环境变量 “LETSENCRYPT_ACCOUNT_EMAIL”。
我是 Rails 新手,能否说明一下应按什么顺序运行命令,以检查 force_https 的值?
这与该问题相同(尽管在不同情况下出现)。
在资源中包含主机名或完整 URL 必然会导致问题。
在此特定情况下,这些资源可能是在启用 force_https 之前构建的。
重新构建即可解决。
ssh root@your.server.ip
cd /var/discourse
./launcher enter app
rails c
puts SiteSetting.force_https
我使用的是 DigitalOcean,已经销毁了 droplet 并创建了一个新的。我按照步骤操作(没有使用之前提到的指南,而是使用了脚本)。但我仍然遇到了同样的错误。
运行命令后,我得到以下结果:

我已对此文件推送了更改,请尝试更新。
嘿,@falco,这个变更会影响 Configuring Activity Summary emails - #32 吗?
编辑:我本来担心会这样,但看起来两者都与 force_https 有关。
不,我的更改仅影响我们服务 worker 文件中 WorkboxJS 库的 URL。
由于 @verilog15 报告 force_https 已经为 true,我推测他的问题正如 @RGJ 所建议的那样。