使用proxy_pass时,如果最后面加上"/",则请求后端服务时会自动去除匹配规则中的uri。
location ^~/appws/ {
# appws结尾不带"/",实际请求服务器时不会去掉"/appws"
proxy_pass http://appws;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real_IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr:$remote_port;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade; # 升级协议头
proxy_set_header Connection upgrade;
}
假设域名为wss://www.baidu.com
请求wss://www.baidu.com/appws
使用nginx代理因为使用"/"斜杠,会把匹配规则中的uri移除掉
实际到达后端服务请求的uri是:
wss://www.baidu.com