wss://连接无法建立。。。 nginx+nodejs+websocket

Pocest 2017-12-27 09:47:37
nginx:

#主要是配置原来的ws 和 http 接口
upstream websocket {
server 127.0.0.1:8081;# 远程websocket服务器地址
}

# 通过下面的反向代理到上面的接口去
server {
listen 443;#默认https和wss协议端口
server_name www.xxx.com;
ssl on;
ssl_certificate cert/214058857310906.pem;#你的上传到服务器的证书位置
ssl_certificate_key cert/214058857310906.key;#你的上传到服务器的证书位置
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;


#wss协议转发 小程序里面要访问的链接
location /api/broadcast {
proxy_pass http://websocket;
proxy_http_version 1.1; # 必需
proxy_set_header Upgrade $http_upgrade; # 必需
proxy_set_header Connection "Upgrade"; # 必需
proxy_set_header Host $host; # 非必需
proxy_set_header X-Real-IP $remote_addr; # 非必需
proxy_set_header X-Real-Port $remote_port; # 非必需
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # 非必需
proxy_set_header X-Forwarded-Protocol "$scheme"; # 非必需

}

}

这个配置可以正常访问https://www.xxx.com 如果换成 wss://www.xxx.com 就不行


NodeJs:


var fs = require( 'fs' );
var app = require('express')();
var https = require('https');
app.use(function(req, res, next) {
res.setHeader('Access-Control-Allow-Origin', '*');
res.setHeader('Access-Control-Allow-Credentials', true);
res.setHeader('Access-Control-Allow-Methods', 'POST, GET, PUT, DELETE, OPTIONS');
next();
});

var server = https.createServer({

key: fs.readFileSync('./cert/214058857310906.key'),
cert: fs.readFileSync('./cert/214058857310906.crt'),
ca: fs.readFileSync('./cert/public.pem'),
requestCert: false,
rejectUnauthorized: true
},app);
server.listen(8081);

var io = require('socket.io').listen(server);
io.sockets.on('connection',function (socket) {
socket.emit('news', { hello: 'world' });
socket.on('hhhh', function (data) {
console.log(data);
});
});
...全文
1199 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_33031041 2018-01-30
  • 打赏
  • 举报
回复
晚上搜的各种姿势好像都不对。。。
Pocest 2017-12-27
  • 打赏
  • 举报
回复 1
这么长时间都没有人回,哎!

5,655

社区成员

发帖
与我相关
我的任务
社区描述
Web开发应用服务器相关讨论专区
社区管理员
  • 应用服务器社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧