Nginx反代Discourse出现502 Bad Gateway错误

我使用宝塔部署了Discourse
Docker外部端口是8080-80,8443-443
Nginx反向代理是:
111

222

回答1:
盲猜https问题

回答2:
discourse不支持端口访问,也不支持IP访问,只能域名+80/443

回答3:
discourse 只能https访问,没记错的话

回答4:
这个问题多是 Let’s Encrypt 给你反向签名的问题。
检测不到地址不是 Discourse 安装程序检测不到,是 Let’s Encrypt 检测不到。
最后的那个 502 Bad Gateway 的错误是 443 的端口错误,是不是你的程序 443 端口没有做好反向代理映射?

这个问题尤其是在有各种反向代理的情况下容易出。

我们的解决办法就是自己买了一个 www 域名的 SSL,这个蛮便宜的,也就是 4 美元左右 1 年。
就不再需要 Let’s Encrypt 不停的给我们的域名签名了,而且 Let’s Encrypt 的签名有效期只有 3 个月,挺麻烦的。
有时候对于常用的和二级域名比较多的,我们就部署了泛域名。
说实话,这个钱还是真值得的,省了好多 Let’s Encrypt 签名签不上,二级域名 3 个月就过期,还要手动签一次的情况。

不仅仅是针对 Discourse。