前段项目用wss,部署到nginx上,连接不通报错failed

利用nginx代理wss

通讯原理及流程是:

wss是不能写ip加端口的,就跟https一样不能接ip跟端口。wss相当于https,只作用于域名身上
因为只能写域名,但是socket监听的是服务器一个端口,所以我们这边就需要配置nginx的反向代理了

在这里插入图片描述
匹配内容部分:

监听端口(listen)

域名( server_name)

匹配关键词(location)
代理访问资源:

匹配到关键词后,通过{……}中的内容确定代理方式。

root:表示代理访问资源的根目录,在根目录下访问用户输入地址的资源。

index对应的是默认资源页面,通常是网站首页。

代理访问网络资源:

转发访问到其他ip端口地址,通过proxy_pass配置来实现

server外面最上面加
upstream webSocket {
  server 127.0.0.1:9501;#需要代理到的socket服务器端口
}
server里面加入
# 访问:wss://xxxx.com/wss
location /wss {
proxy_pass https://webSocket/;#代理到上面的地址去
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}
这样你的socket请求就会被代理你的服务器端口上面,然后就成功了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值