nginx中对websocket的代理

1、前后端分离的项目,使用nginx反向代理,下面是对于websocket的处理

location /prod-api/ws/ {
	# 同一服务器,转发到本地8080端口的WebSocket服务,地址后面的/不能少
	proxy_pass http://127.0.0.1:8080/;  
	# WebSocket核心配置(必须添加,确保协议升级)
	# WebSocket基于HTTP/1.1
	proxy_http_version 1.1;
	# 转发"升级协议"请求头
	proxy_set_header Upgrade $http_upgrade;
	# 强制设置连接为"升级"模式
	proxy_set_header Connection "Upgrade";
	# 传递主机信息
	proxy_set_header Host $host;
	# 配置单独的日志文件
	access_log  logs/location03.access.log  main;
}

2、转发规则解释

假如nginx配置的server监听端口为80
前端websocket
ws://127.0.0.1/prod-api/ws/progress
nginx拦截转发
http://127.0.0.1:8080/progress

小尾巴~~
只要有积累,就会有进步

更多推荐