[英]Node.js Socket.io chat server SSL
我正在尝试在node.js / socket.io中获取我的聊天应用程序以在SSL(https)上运行,现在我在启动服务器时没有收到错误,但现在无法连接。
我用谷歌搜索并尝试了很多例子,但我无法使它工作。
这是我的旧代码(适用于http)
var express = require('express')
, app = express()
, http = require('http')
, server = http.createServer(app)
, io = require('socket.io').listen(server);
server.listen(8080);
app.get('/', function (req, res) {
res.sendfile(__dirname + '/index.html');
});
这是我更改的代码:
var https = require('https');
var fs = require('fs');
var options = {
key: fs.readFileSync('cert.key'),
cert: fs.readFileSync('cert.crt')
};
var express = require('express')
, app = express();
var server = https.createServer(options);
var io = require('socket.io').listen(server);
server.listen(8080);
app.get('/', function (req, res) {
res.sendfile(__dirname + '/index.html');
});
这就是我在节点上创建https服务器的方式。 一旦对我来说一切正常,请尝试一下。
var port = "80";
var express = require('express')
, app = express()
, http = require('http')
, server = http.createServer(app);
server.listen(port);
var fs = require('fs');
var net = require('net');
var tls = require('tls');
var sslOptions = {
key: fs.readFileSync('public/server.key'),
cert: fs.readFileSync('public/server.crt')
};
tls.createServer(sslOptions, function (cleartextStream) {
var cleartextRequest = net.connect({
port: port, //your port
host: serverStr // your server address
}, function () {
cleartextStream.pipe(cleartextRequest);
cleartextRequest.pipe(cleartextStream);
});
}).listen(443);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.