簡體   English   中英

Node.js Socket.io聊天服務器SSL

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM