求助:discourse相关

如何使用nginx反向代理已搭建在82端口的discourse?
目前正常的反向代理存在问题:
discourse使用ip访问会自动重定向到安装时的域名
nginx反向访问127.0.0.1:82时会被discourse重定向到域名
而域名解析了服务器ip
nginx最终会无限重定向,触发浏览器超liangi报错重定向过多
目前尝试了修改nginx反向代理配置文件使反向代理访问请求头host地址
无效
又使了cloudlfare端口转发无效

【跨世纪】手把手教你搭建一个雨云同款论坛

我就是手动编辑的
改了域名邮箱端口还有一坨乱七八糟的,总之是照着你的教程操作的

我又简单看了一下源码,域名貌似是记录在数据库中的,去phpmyadmin搜DISCOURSE_HOSTNAME或者搜你原先填写的域名


如果问题不是出在域名上,建议将nginx反代时默认的向后端传递的域名(也就是Host头)从$host改为你填写的域名

应该大概可能或许也许是 Discourse 的配置导致的

1. 调整 Discourse 配置

在 Discourse 的 app.yml,确认 Discourse 的配置是否正确设置了 DISCOURSE_HOSTNAME 环境变量为你的域名

env:
  DISCOURSE_HOSTNAME: 'bbs.example.top'

2. 配置 Nginx

配置 Nginx 作为反向代理。你需要确保 Nginx 的配置文件中设置了正确的 proxy_set_header Host 指令,让 Discourse 接收到的请求像是直接发送到正确的域名。

server {
    listen 80;
    server_name bbs.example.top;

    location / {
        proxy_pass http://127.0.0.1:82;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

3. 重启服务

sudo systemctl restart nginx
cd /var/discourse
./launcher restart app

我就是这么操作的,,,

额。

无解了,建议备份后重装(

想出来一个奇葩的方法:反向代理你服务器的公网IP

试了无效
跟域名走cloudflare代理又没有关系?
说实话,重装太费事了:
image

6‬

SRV解析可以吗(没试过,SRV好像不是用来干这个的)

_http._tcp.???.top. 3600 IN SRV 10 5 82 host.???.top.

???.top是要解析的域名
host.???.top应该是解析到你主机的公网IP

试了不行

6‬

无解