add https server mode

This commit is contained in:
加里
2014-08-09 14:16:59 +08:00
parent 146cc6a021
commit 770d495440
3 changed files with 62 additions and 25 deletions

15
lib/createCert.js Normal file
View File

@@ -0,0 +1,15 @@
var exec = require('child_process').exec;
module.exports = function(hostname,callback){
console.log("creating cert for :" + hostname);
var cmd = "./gen-cer "+hostname;
exec(cmd,{cwd:"./cert/"},function(err,stdout,stderr){
if(err){
callback && callback(new Error("error when generating certificate"),null);
}else{
console.log("certificate created for __HOST".replace(/__HOST/,hostname));
callback(null);
}
});
}

View File

@@ -6,7 +6,7 @@ var getPort = require('./getPort'),
fs = require('fs'),
net = require('net'),
url = require('url'),
exec = require('child_process').exec;
createCert= require("./createCert");
if(!fs.existsSync("cert/tmpCert")){
fs.mkdirSync("cert/tmpCert");
@@ -50,17 +50,7 @@ module.exports =function(){
//create a cert for this hostname if not exists
function(callback){
if(!fs.existsSync(keyFile) || !fs.existsSync(crtFile)){
console.log("creating cert for :" + hostname);
var cmd = "./gen-cer "+hostname;
exec(cmd,{cwd:"./cert/"},function(err,stdout,stderr){
if(err){
callback && callback(new Error("error when generating certificate"),null);
}else{
console.log("certificate created for __HOST".replace(/__HOST/,hostname));
callback(null);
}
});
createCert(hostname,callback)
}else{
callback(null);
}