在端口4200上使用Socket.io在Node.js上使用HTTPS

时间:2019-03-13 15:25:24

标签: node.js express ssl https socket.io

我正在尝试在CentOS上的https上运行节点服务器。 它可以在端口4200上的http上运行,但不能与https一起使用。 我对node.js和socket.io的使用经验为零,我刚刚从该论坛复制了一些https信息,但无法正常工作。 我的服务器上已打开此端口4200。 请帮助

这是代码:

app.js

var express = require('express'),
    app = express(),
    fs = require('fs'),
    https = require('https');

var options = {
  key: fs.readFileSync('__key__location__.key'),
  cert: fs.readFileSync('__cert__location__.crt')
};

var port = process.env.PORT || 3001;

var server = https.createServer(options, app);

require('./config')(app, io);
require('./routes')(app, io,connection);
var io = require('socket.io').listen(server);

config.js

var express = require('express');

module.exports = function(app, io){

    /**
     * Set .html as the default template extension
     */
    app.set('view engine', 'html');

    /**
     * Initialize the ejs template engine
     */
    app.engine('html', require('ejs').renderFile);

};

connection.js

var mysql      = require('mysql');

module.exports = function(){

    var db_config = {

        host: "host",
        user: "user",
        password: "password",
        database: "database"
    };

    connection = mysql.createConnection(db_config);
    return connection;
}

routes.js

module.exports = function(app,io,connection){
    /* I can't put this code  here*/
}

但是只是为了方便,代码在本地服务器上以及在具有http而不是https的服务器上都能正常工作。 而且我也没有任何错误。

0 个答案:

没有答案