试图在 nginx 配置文件中列出所有路由是走错了方向,这永远行不通。
首先,按照 Serve Discourse from a subfolder (path prefix) instead of a subdomain 的指南在服务器上安装 Discourse。为此请使用内部域名,以确保配置生效。同时,您还需要从 app.yml 中移除 SSL 模板。
然后,在您控制实际域名的服务器上,添加一个包含子文件夹的 location 块,并使用必要的代理指令将流量转发到 Discourse 所在的服务器。