我想在域名的不同端口起不同的服务
https://blog.csdn.net/pml18710973036/article/details/69053525?locationNum=10&fps=1
80 是 http 和 ws 协议监听的端口号
无论 wss 协议还是 https 协议都是在 443 上监听
反向代理官方讲解配置
http://nginx.org/en/docs/http/websocket.html
一下配置摘抄自官网,添加了注释
nginx 设置 socket 反向代理
location /chat/ {
proxy_pass http://backend;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
增加了 map 保证了 http_upgrade 一定是有值的
默认是 upgrade
否则close
但是第二种方法在执行
nginx -t
的时候,无法测试成功,所以第二种方法暂时没有使用
http {
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
server {
...
location /chat/ {
proxy_pass http://backend;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}
}
nginx 其他配置