You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by an...@apache.org on 2015/09/21 04:39:47 UTC
ignite git commit: # IGNITE-1502 Add ssl support for web console.
Repository: ignite
Updated Branches:
refs/heads/ignite-843 e5051e9c3 -> f106b40b7
# IGNITE-1502 Add ssl support for web console.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/f106b40b
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/f106b40b
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/f106b40b
Branch: refs/heads/ignite-843
Commit: f106b40b77fb80ca91e3fcb6680b37c5b015b176
Parents: e5051e9
Author: Andrey <an...@gridgain.com>
Authored: Mon Sep 21 09:39:45 2015 +0700
Committer: Andrey <an...@gridgain.com>
Committed: Mon Sep 21 09:39:45 2015 +0700
----------------------------------------------------------------------
modules/control-center-web/src/main/js/app.js | 22 ++++++++--
modules/control-center-web/src/main/js/bin/www | 43 ++++++++++++++++----
.../src/main/js/config/default.json | 23 ++++++-----
.../control-center-web/src/main/js/package.json | 4 +-
4 files changed, 68 insertions(+), 24 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/f106b40b/modules/control-center-web/src/main/js/app.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app.js b/modules/control-center-web/src/main/js/app.js
index 4eb5edb..6bba806 100644
--- a/modules/control-center-web/src/main/js/app.js
+++ b/modules/control-center-web/src/main/js/app.js
@@ -15,7 +15,6 @@
* limitations under the License.
*/
-var flash = require('connect-flash');
var express = require('express');
var compress = require('compression');
var path = require('path');
@@ -85,8 +84,6 @@ app.use(session({
})
}));
-app.use(flash());
-
app.use(passport.initialize());
app.use(passport.session());
@@ -174,4 +171,23 @@ app.use(function (err, req, res) {
});
});
+/**
+ * Normalize a port into a number, string, or false.
+ */
+function normalizePort(val) {
+ var port = parseInt(val, 10);
+
+ if (isNaN(port)) {
+ // named pipe
+ return val;
+ }
+
+ if (port >= 0) {
+ // port number
+ return port;
+ }
+
+ return false;
+}
+
module.exports = app;
http://git-wip-us.apache.org/repos/asf/ignite/blob/f106b40b/modules/control-center-web/src/main/js/bin/www
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/bin/www b/modules/control-center-web/src/main/js/bin/www
index cbc637a..a55c5e0 100644
--- a/modules/control-center-web/src/main/js/bin/www
+++ b/modules/control-center-web/src/main/js/bin/www
@@ -7,6 +7,7 @@ var http = require('http');
var https = require('https');
var config = require('../helpers/configuration-loader.js');
var app = require('../app');
+var forceSSL = require('express-force-ssl');
var agentManager = require('../agents/agent-manager');
var fs = require('fs');
@@ -16,14 +17,13 @@ var debug = require('debug')('ignite-web-control-center:server');
/**
* Get port from environment and store in Express.
*/
-var port = normalizePort(process.env.PORT || config.get('express:port'));
-app.set('port', port);
+var port = normalizePort(process.env.PORT || config.get('server:port'));
-/**
- * Create HTTP server.
- */
+// Create HTTP server.
var server = http.createServer(app);
+app.set('port', port);
+
/**
* Listen on provided port, on all network interfaces.
*/
@@ -31,16 +31,41 @@ server.listen(port);
server.on('error', onError);
server.on('listening', onListening);
+if (config.get('server:ssl')) {
+ httpsServer = https.createServer({
+ key: fs.readFileSync(config.get('server:key')),
+ cert: fs.readFileSync(config.get('server:cert')),
+ passphrase: config.get('server:keyPassphrase')
+ }, app);
+
+ var httpsPort = normalizePort(process.env.PORT || config.get('server:https-port'));
+
+ app.set('forceSSLOptions', {
+ enable301Redirects: true,
+ trustXFPHeader: true,
+ httpsPort: httpsPort
+ });
+
+ app.use(forceSSL);
+
+ /**
+ * Listen on provided port, on all network interfaces.
+ */
+ httpsServer.listen(httpsPort);
+ httpsServer.on('error', onError);
+ httpsServer.on('listening', onListening);
+}
+
/**
* Start agent server.
*/
var agentServer;
-if (config.get('monitor:server:ssl')) {
+if (config.get('agent-server:ssl')) {
agentServer = https.createServer({
- key: fs.readFileSync(config.get('monitor:server:key')),
- cert: fs.readFileSync(config.get('monitor:server:cert')),
- passphrase: config.get('monitor:server:keyPassphrase')
+ key: fs.readFileSync(config.get('agent-server:key')),
+ cert: fs.readFileSync(config.get('agent-server:cert')),
+ passphrase: config.get('agent-server:keyPassphrase')
});
}
else {
http://git-wip-us.apache.org/repos/asf/ignite/blob/f106b40b/modules/control-center-web/src/main/js/config/default.json
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/config/default.json b/modules/control-center-web/src/main/js/config/default.json
index 19e1fba..bf1e88b 100644
--- a/modules/control-center-web/src/main/js/config/default.json
+++ b/modules/control-center-web/src/main/js/config/default.json
@@ -1,18 +1,21 @@
{
- "express": {
- "port": 3000
+ "server": {
+ "port": 3000,
+ "https-port": 8443,
+ "ssl": false,
+ "key": "keys/test.key",
+ "cert": "keys/test.crt",
+ "keyPassphrase": "password"
},
"mongoDB": {
"url": "mongodb://localhost/web-control-center"
},
- "monitor": {
- "server": {
- "port": 3001,
- "ssl": true,
- "key": "keys/test.key",
- "cert": "keys/test.crt",
- "keyPassphrase": "password"
- }
+ "agent-server": {
+ "port": 3001,
+ "ssl": true,
+ "key": "keys/test.key",
+ "cert": "keys/test.crt",
+ "keyPassphrase": "password"
},
"smtp": {
"service": "",
http://git-wip-us.apache.org/repos/asf/ignite/blob/f106b40b/modules/control-center-web/src/main/js/package.json
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/package.json b/modules/control-center-web/src/main/js/package.json
index f2969b2..b8f514e 100644
--- a/modules/control-center-web/src/main/js/package.json
+++ b/modules/control-center-web/src/main/js/package.json
@@ -24,11 +24,11 @@
"body-parser": "~1.13.3",
"bootstrap-sass": "^3.3.5",
"compression": "1.5.2",
- "connect-flash": "^0.1.1",
"connect-mongo": "^0.8.1",
"cookie-parser": "~1.3.4",
"debug": "~2.2.0",
"express": "~4.13.3",
+ "express-force-ssl": "^0.3.0",
"express-session": "^1.11.1",
"jade": "~1.11.0",
"lodash": "3.10.1",
@@ -36,10 +36,10 @@
"mongoose-deep-populate": "2.0.1",
"nconf": "^0.7.2",
"node-sass-middleware": "0.9.0",
+ "nodemailer": "1.4.0",
"passport": "^0.3.0",
"passport-local": "^1.0.0",
"passport-local-mongoose": "2.0.0",
- "nodemailer": "1.4.0",
"serve-favicon": "~2.3.0",
"ws": "~0.8.0"
},