2014-03-28 67 views
0

我無法通過https連接端口。我早些時候在我的代碼中有一個require('http'),我改變它需要('http'),但它不起作用。它仍然在瀏覽器中打開http。這是代碼。我經歷了許多論壇,但無法找到答案。我的網站有一個SSL證書(smartican.com)node.js + socket.io端口不能用ssl打開

var express = require('express'); 
var routes = require('./routes'); 
var https = require('https'); 
var path = require('path'); 
var socketio = require('socket.io'); 
var util = require('util'); 
var url = require('url'); 

var DBWrapper = require('node-dbi').DBWrapper; 
var DBExpr = require('node-dbi').DBExpr; 
var dbConnectionConfig = { config}; 
dbWrapper = new DBWrapper("pg", dbConnectionConfig); 
dbWrapper.connect(); 

var app = express(); 

var connectedsockets = new Array(); 

// all environments 
app.set('port', process.env.PORT || 8080); 
app.set('views', path.join(__dirname, 'views')); 
app.set('view engine', 'jade'); 
app.use(express.logger('dev')); 
app.use(express.json()); 
app.use(express.urlencoded()); 
app.use(express.methodOverride()); 
app.use(app.router); 
app.use(express.static(path.join(__dirname, 'public'))); 


app.get('/', routes.index); 

var server = https.createServer(app).listen(app.get('port'), function(){ 
    console.log("Express server listening on port with https" + app.get('port')); 
}); 
var io = socketio.listen(server); 

回答

1

嘗試

server = https.createServer({key:fs.readFileSync('key.pem'), cert:fs.readFileSync('cert.pem')},app).listen.... 

你通過密鑰和證書作爲對象。這使您可以使用您的花哨SSL證書。

+0

謝謝..我錯過了私鑰和ssl證書 – user3455531