socket.io和nodejs如果需要同时支持http和https的话需要怎么设置
nginx https 什么的已经设置好了
//端口
var port = normalizePort(process.env.PORT || 3002);
var https_port = normalizePort(process.env.HTTPS_PORT || 443);
//https证书
var opts = {
key: fs.readFileSync('pem/openssl/ssl.key'),
cert: fs.readFileSync('pem/openssl/ssl.crt')
};
var server = http.createServer(handler);
var httpsServer = https.createServer(opts, function(req, res) {
res.writeHead(200, {
"Content-Type": "text/plain"
});
res.write("hello https");
res.end();
});
server.listen(port);
httpsServer.listen(https_port);
server.on('error', onError);
server.on('listening', onListening);
httpsServer.on('error', onError);
httpsServer.on('listening', onListening);
//socket.io
var io = require('socket.io')({}); <-------- 这里改如何设置
io.attach(server);
io.attach(httpsServer);