Wednesday, 15 April 2015

express - compoundjs support both ssl and normal http -



express - compoundjs support both ssl and normal http -

i needed utilize ssl on site in situations,

i have followed illustration in readme

require('compound').createserver({ key: fs.readfilesync('/tmp/tls.key').tostring(), cert: fs.readfilesync('/tmp/tls.cert').tostring() });

my server.js

#!/usr/bin/env node var fs = require('fs'); /** * server module exports method returning new instance of app. * * @param {object} params - compound/express webserver initialization params. * @returns compoundjs powered express webserver */ var app = module.exports = function getserverinstance(params) { params = params || {}; // specify current dir default root of server params.root = params.root || __dirname; params["key"] = fs.readfilesync('/tmp/tls.key').tostring(); params["cert"] = fs.readfilesync('/tmp/tls.cert').tostring(); homecoming require('compound').createserver(params); }; if (!module.parent) { var port = process.env.port || 3000; var host = process.env.host || '0.0.0.0'; var server = app(); server.listen(port, host, function () { console.log( 'compound server listening on %s:%d within %s environment', host, port, server.set('env') ); }); }

now problem can't http, https. if set cert , key within of config folder , have

**var app = module.exports = function getserverinstance(params) { params = params || {}; // specify current dir default root of server params.root = params.root || __dirname; homecoming require('compound').createserver(params); };**

then error

config/tls.cert:1 tion (exports, require, module, __filename, __dirname) { -----begin certificat ^^^^^^^^^^^ syntaxerror: unexpected identifier @ module._compile (module.js:439:25)

what quickest , easiest way compoundjs back upwards both https , http routes, need have 2 servers (like straight express)?

yes - need have 2 servers express. so

var app = module.exports = function getserverinstance(params) { params = params || {}; // specify current dir default root of server params.root = params.root || __dirname; homecoming require('compound').createserver(params); }; var port = process.env.port || 80; var host = process.env.host || '0.0.0.0'; var port_https = 443; var server = app(); server.listen(port, host, function () { server.set("confvar", process.env.server_name); console.log( 'compound server listening on %s:%d within %s environment', host, port, server.set('env') ); }); if(fs.existssync(path key goes here)){ var apphttps = module.exports = function getserverinstance(params) { params = params || {}; // specify current dir default root of server params.root = params.root || __dirname; params.key = fs.readfilesync(path key goes here).tostring(); params.cert = fs.readfilesync(path cert goes here).tostring(); homecoming require('compound').createserver(params); }; var serverhttps = apphttps(); serverhttps.listen(port_https, host, function () { serverhttps.set("confvar", process.env.server_name); console.log( 'compound https server listening on %s:%d within %s environment', host, port_https, serverhttps.set('env') ); }); }

ssl express compoundjs

No comments:

Post a Comment