我要用我的nginx通过wss方式来代理别人服务器的ws协议在nginx怎样写配置
您可以在nginx配置中添加以下内容来代理别人服务器的ws协议:
map $scheme $wss {
default "";
ws "s";
}
server {
listen 443;
server_name example.com;
# SSL configuration goes here
location / {
proxy_pass http://别人服务器的IP地址:端口号;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $wss;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
在这个配置中,我们使用map指令来判断请求协议是否为ws,如果是,我们就将$wss设置为s,表示使用wss协议。接下来,我们在location块中设置了代理服务器的IP地址和端口号,并启用了HTTP/1.1协议。我们还在代理请求头中添加了升级协议和连接头,以及其他一些请求头,如Host、X-Real-IP、X-Forwarded-Proto和X-Forwarded-For。
请注意,这个配置需要您的nginx已经启用了SSL证书,并且您需要替换上述配置中的example.com、别人服务器的IP地址和端口号为实际值。
原文地址: https://www.cveoy.top/t/topic/brbR 著作权归作者所有。请勿转载和采集!