客服系统即时通讯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 能够正确地识别客户端请求,从而进行协议升级。
相关推荐
1***y1781 天前
DevOps在云中的Rancher
运维·rancher·devops
tianyuanwo1 天前
多平台容器化RPM构建流水线全指南:Fedora、CentOS与Anolis OS
linux·运维·容器·centos·rpm
wasp5201 天前
做了技术管理后,我发现技术和管理其实可以兼得
java·运维·网络
云和数据.ChenGuang1 天前
mysqld.service is not a native service问题解决!
运维·nginx·运维技术·运维工程师技术
写代码的学渣1 天前
ubuntu 22.04 新装的系统 xshell 连不上
linux·运维·ubuntu
2501_941805931 天前
深入解析现代多语言后端架构设计:Python、Java、C++与Go在高性能服务中的实践
运维
F***E2391 天前
如何安装配置Goland并使用固定公网地址SSH远程连接本地服务器
运维·服务器·ssh
序属秋秋秋1 天前
《Linux系统编程之进程环境》【环境变量】
linux·运维·服务器·c语言·c++·操作系统·系统编程
云边有个稻草人1 天前
手机也能控 Linux?Cpolar+JuiceSSH 搞定内网远程
运维·服务器·cpolar
Altair12311 天前
nginx的https的搭建
运维·网络·nginx·云计算