Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
这像 WebSocket 断了。浏览器控制台看 socket.io 有没有 reconnect 或 transport close。
控制台有 websocket error,但页面没有明显提示。
websocket error
代理头先看:Upgrade、Connection、Host、X-Forwarded-Proto。Nginx 少一项就会变成长轮询或断连。
如果前面还有 FRP,也要确认它支持并稳定转发 WebSocket。
还有超时。proxy_read_timeout 太短时,空闲连接会被代理切掉。
proxy_read_timeout
我外层 Nginx 配了 upgrade,内层没有。
双层代理都要配。用户路径经过哪里,哪里就不能假装透明。
多实例 NodeBB 的话还要看 sticky session 或 Redis adapter,不然 WebSocket 连到不同进程会乱。
我们单实例,先补内层 Nginx。
补完要用真实浏览器挂 15 分钟,看通知和在线状态,不是 curl 健康检查。
补配置后挂了半小时,通知正常了。
这类事故复盘要写“页面可访问不等于实时通道可用”,监控也要覆盖 WebSocket。
你好!看起来您对这段对话很感兴趣,但您还没有一个账号。
厌倦了每次访问都刷到同样的帖子?您注册账号后,您每次返回时都能精准定位到您上次浏览的位置,并可选择接收新回复通知(通过邮件或推送通知)。您还能收藏书签、为帖子顶,向社区成员表达您的欣赏。
有了你的建议,这篇帖子会更精彩哦 💗