2017-04-19 43 views
1

我嘗試將我的節點服務器配置爲SSL,我的節點服務器和php都在同一個實例上工作。節點啓動時沒有錯誤,但當我通過套接字或網址發送請求時,它會崩潰。只顯示 分割故障Https服務器上的節點js分段錯誤

我的節點版本是6.9.4

這裏我節點js腳本

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


var f_root = 'path_to_ssl'; 
var options = { 
    key: fs.readFileSync(f_root+'ssl.myserver.key'), 
    cert: fs.readFileSync(f_root+'ssl.myserver.pem') 
}; 

app.get("/", function(request, response){ 
    console.log(" Hello World"); 

}); 

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


httpsserver.listen(3001); 
+0

能否請您粘貼正是因爲它顯示錯誤? – sadmicrowave

+0

也是,你調用'https.createServer'兩次,但將它分配給兩個不同的變量。你的'httpserver'變量應該有'http.createServer'分配 – sadmicrowave

+0

「分段錯誤」,你所有的 –

回答

1

終於找到了問題

問題是.pem文件。我用的是.CRT,而不是.PEM文件

這裏的更新

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


var f_root = 'path_to_ssl'; 
var options = { 
    key: fs.readFileSync(f_root+'ssl.myserver.key'), 
    // this is the issue 
    cert: fs.readFileSync(f_root+'ssl.myserver.crt') 
}; 

app.get("/", function(request, response){ 
    console.log(" Hello World"); 

}); 

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


httpsserver.listen(3001);