客服系统即时通讯Nginx配置支持WebSocket

如果遇到搭建好客服系统后,发消息不能即时通知推送,那就是webscoket部分没有配置正确

在反向代理的配置块里

增加以下两句

bash 复制代码
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
  1. proxy_set_header Upgrade $http_upgrade;:
  • 这个指令设置代理服务器将请求头中的 "Upgrade" 字段的值设为客户端请求头中的相应值。"Upgrade" 是 HTTP/1.1 协议中的一个头部字段,用于指定要升级到的协议。在 WebSocket 连接中,客户端会在请求头中包含 "Upgrade: websocket",表示希望升级到 WebSocket 协议。
  • $http_upgrade 是一个 Nginx 变量,它包含客户端请求头中 "Upgrade" 字段的值。通过将代理服务器的 "Upgrade" 字段设置为相同的值,Nginx 就能正确地转发 WebSocket 的 "Upgrade" 请求。
  1. proxy_set_header Connection "upgrade";:
  • 这个指令设置代理服务器将请求头中的 "Connection" 字段的值设为 "upgrade"。"Connection" 字段指示客户端请求是否需要保持持久连接。在 WebSocket 连接中,客户端通常在请求头中包含 "Connection: upgrade",表示希望与服务器建立持久连接,并请求升级到 WebSocket 协议。
  • 将代理服务器的 "Connection" 字段设置为 "upgrade" 使得 Nginx 能够正确地识别客户端请求,从而进行协议升级。
相关推荐
陈希12316 分钟前
Linux 防火墙配置实战:firewalld、iptables 与云安全组
linux·运维·服务器
@兽血沸腾1 小时前
Windows系统安装Jenkins部署应用至远程Windows服务器操作指南
运维·服务器·jenkins
讯捷蓝达7 小时前
戴尔R720xd服务器卡死在 “Configuring Memory...Done“,换了内存还是卡?问题根本不在内存
运维·服务器
爱和冰阔落9 小时前
【Linux网络】TCP 服务器如何并发处理多个客户端?从 fork、僵尸进程到双重 fork
linux·运维·服务器·网络
陈希1239 小时前
Nginx 从入门到能扛事:反向代理、负载均衡与 HTTPS 实战
nginx·https·负载均衡
lisanmengmeng10 小时前
alertmanger 标签 rules 打上分组标签
linux·运维·服务器
Android系统攻城狮10 小时前
Linux FFmpeg深度解析之av_write_frame调用流程与实战(三十三)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频
上火的金鱼妹11 小时前
k8s生产实际问题排查(网关,数据库读写等)
运维·服务器
孙克旭_11 小时前
k8s基础组件与创建资源
运维·docker·容器·kubernetes
孙克旭_11 小时前
云原生基础之Containerd容器运行时
运维·云原生