配置Nginx反向代理WebSocket

1.什么是WebSocket

WebSocket协议给我们提供了一个创建可以支持客户端和服务端进行双向实时通信的web应用程序的方法。NGINX自从1.3版本就开始支持WebSocket了,并且可以为WebSocket应用程序做反向代理和负载均衡。

2.nginx配置

NGINX 通过在客户端和后端服务器之间建立起一条隧道来支持WebSocket。为了使NGINX可以将来自客户端的Upgrade请求发送给后端服务器,Upgrade和Connection的头信息必须被显式的设置。

location /socket {
proxy_http_version 1.1;  # 表示反向代理发送的HTTP协议的版本是1.1,HTTP1.1支持长连接
proxy_set_header Upgrade http_upgrade; #表示设置Upgrade不变
proxy_set_header Connectionconnection_upgrade; #表示如果 $http_upgrade为upgrade,则请求为upgrade(websocket),如果不是,就关闭连接

}

一旦我们完成以上设置,NGINX就可以处理WebSocket连接了。

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: