客服系统即时通讯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 能够正确地识别客户端请求,从而进行协议升级。
相关推荐
q***13341 小时前
Linux(CentOS)安装 Nginx
linux·nginx·centos
摘星编程1 小时前
openGauss 快速上手:CentOS 环境下单机部署完整指南
linux·运维·centos
大喵桑丶6 小时前
中间件快速部署(Nginx,Keepalived)
运维·nginx·中间件
hanyi_qwe7 小时前
文本三剑客--awk
linux·运维·服务器
Caven778 小时前
【Linux 技巧】如何在登录时自动激活 Conda Base 环境
linux·运维·conda
凌寒118 小时前
Linux(Debian)安装、卸载 MySQL
linux·运维·mysql·debian
云飞云共享云桌面8 小时前
如何降低非标自动化工厂的研发软件采购成本
运维·服务器·网络·数据库·性能优化·自动化
七七墨染8 小时前
DotMemory系列:5. 如何实现自动化抓取和应用自托管
运维·c#·自动化
泰克教育官方账号8 小时前
泰涨知识 | 什么是自动化巡检?
运维·服务器·数据库
怀旧,9 小时前
【Linux系统编程】7. 进程的概念(上)
linux·运维·服务器