502 Gateway Error: Discourse 安装,使用来自 Cloudflare 的 SSL

大家好,

我第一次安装官方的 Discourse。我按照标准说明操作:https://github.com/discourse/discourse/blob/master/docs/INSTALL-cloud.md,但同时也根据端口 80 被占用的情况,参考了以下修改方案:Run other websites on the same machine as Discourse

我将暴露的端口改为 3002:3000。我克隆 git 并存放所有 Discourse 文件的默认目录是 var/www/docker-sites/discourse,而不是 var/discourse。我的 app.yml 与 samples 文件夹中的 standalone.yml 基本相同,只是端口和默认目录有所调整。

我使用 Cloudflare 生成 SSL 证书和密钥,相关配置位于我的 etc/nginx/nginx.conf 文件中。

我没有迁移任何数据库。这是一个全新安装,没有任何用户或帖子。我的 VPS 拥有 2 GB 内存。

我遇到了 502 网关错误。我已经尝试刷新页面。是的,我的 DNS 记录已正确配置在 Cloudflare 上,并且已启用代理。域名与 app.yml 中的域名一致。我已在 app.yml 中正确填写了所有 SMTP 邮件信息。我运行了 ./launcher rebuild app 命令,没有报错。我的系统是 Ubuntu 20.04。

请问有什么可能的原因导致我遇到这个 502 网关错误吗?

1 个赞

无法确定,因为反向代理配置出错的方式有很多。而且,将 Discourse 迁移到 /var/discourse 以外的位置时,也很容易出错。如果你在这里搜索,会发现数十篇关于 Cloudflare 代理引发问题的帖子。

你最好从一个能正常运行的配置开始,然后每次只做一个改动。

1 个赞

只是想告诉大家,我已经修复了 502 网关错误。我只需要用 sudo service nginx restart 重启一下 nginx 就可以了。

3 个赞

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.