wss协议域名访问做443端口转发为什么没用?
1、Nginx设置如下
# 实际websocket服务器地址
upstream wss_svr {
server 192.168.213.182:1234 weight=1;
}
# 443 ssl端口配置,实际websockets(wss)地址
server {
listen 443;
server_name www.a.com;
ssl on;
# 自己的证书,放在与nginx.conf同一文件夹下。(若放不同文件夹注意路径问题)
ssl_certificate dhxtest.crt;
ssl_certificate_key dhxtest_nopass.key;
ssl_session_timeout 5m;
ssl_session_cache shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 SSLv2 SSLv3;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;
ssl_verify_client off;
location / {
proxy_redirect off;
proxy_pass http://wss_svr; # 转发
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;
}
}
2、WebSocket连接如下
ws = new WebSocket("wss://www.a.com");
ws.onopen = function() {
alert("连接成功");
ws.send('tom');
alert("给服务端发送一个字符串:tom");
};
ws.onmessage = function(e) {
alert("收到服务端的消息:" + e.data);
};
3、如果用端口连接的话就可以 wss://www.a.com:1234
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
具体的报错信息是?
workerman有视频教程,挺不错的。网址: https://study.163.com/course/...