美文网首页
2019-05-28 nginx实现websocket反向代理

2019-05-28 nginx实现websocket反向代理

作者: 张大志的博客 | 来源:发表于2019-05-28 15:46 被阅读0次
server {
    server_name websocket.zhangdazhi.com;
    location / {
         proxy_pass http://echo.websocket.org; #此服务是网上搭建好的websocket服务
         proxy_http_version 1.1;
         proxy_set_header Upgrade $http_upgrade;  #添加与上游服务的如下请求头部实现与上游服务器的连接为websocket协议
         proxy_set_header Connection "upgrade";
    }
}
访问http://www.websocket.org/echo.html
image.png
tcpdump -i eth0 tcp port 80 and  host 150.109.98.115 -A  #抓包可以看到请求头和响应头部
.h...h..GET /?encoding=text HTTP/1.1   #请求头
Host: websocket.zhangdazhi.com
Connection: Upgrade
Pragma: no-cache
Cache-Control: no-cache
Upgrade: websocket
Origin: http://www.websocket.org
Sec-WebSocket-Version: 13
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
Sec-WebSocket-Key: dpav+H0x4IKcSRDqMt2U1g==
Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits
.h.h.h..HTTP/1.1 101 Web Socket Protocol Handshake  #响应头部
Server: nginx/1.16.0
Date: Tue, 28 May 2019 07:40:50 GMT
Connection: upgrade
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: content-type
Access-Control-Allow-Headers: authorization
Access-Control-Allow-Headers: x-websocket-extensions
Access-Control-Allow-Headers: x-websocket-version
Access-Control-Allow-Headers: x-websocket-protocol
Access-Control-Allow-Origin: http://www.websocket.org
Sec-WebSocket-Accept: EAs08XRAZhkNq8TA86704zXBwUc=
Upgrade: websocket

相关文章

网友评论

      本文标题:2019-05-28 nginx实现websocket反向代理

      本文链接:https://www.haomeiwen.com/subject/zpydtctx.html