diff --git a/nodejs.config.js.example b/nodejs.config.js.example
index 04163fe..e35c192 100644
--- a/nodejs.config.js.example
+++ b/nodejs.config.js.example
@@ -33,6 +33,9 @@
  * sslCertPath: File system path to a certificate used for https communication with the
  * server and clients.
  *
+ * sslCAPath: File system path to an Intermediary, Root, CA or Chain certificate,
+ * if your certificate requires one.
+ *
  * publishUrl: http path on which the node server should accept messages from
  * the Drupal site.
  *
@@ -82,6 +85,7 @@ settings = {
   debug: false,
   sslKeyPath: '',
   sslCertPath: '',
+  sslCAPath: '',
   baseAuthPath: '/nodejs/',
   publishUrl: 'publish',
   kickUserUrl: 'user/kick/:uid',
diff --git a/server.js b/server.js
index 791d18d..dd0d70b 100644
--- a/server.js
+++ b/server.js
@@ -1016,10 +1016,19 @@ var setupClientConnection = function (sessionId, authData, contentTokens) {
 
 var server;
 if (settings.scheme == 'https') {
-  server = express.createServer({
-    key: fs.readFileSync(settings.sslKeyPath),
-    cert: fs.readFileSync(settings.sslCertPath)
-  });
+	if (settings.sslCAPath == '') {
+	  server = express.createServer({
+	    key: fs.readFileSync(settings.sslKeyPath),
+	    cert: fs.readFileSync(settings.sslCertPath)
+	  });
+	}
+	else {
+	  server = express.createServer({
+		    key: fs.readFileSync(settings.sslKeyPath),
+		    ca: fs.readFileSync(settings.sslCAPath),
+		    cert: fs.readFileSync(settings.sslCertPath)
+		  });
+	}
 }
 else {
   server = express.createServer();
