|
|
@@ -136,6 +136,8 @@ const internalNginx = {
|
|
|
* @returns {Promise}
|
|
|
*/
|
|
|
renderLocations: (host) => {
|
|
|
+
|
|
|
+ // logger.info('host = ' + JSON.stringify(host, null, 2));
|
|
|
return new Promise((resolve, reject) => {
|
|
|
let template;
|
|
|
|
|
|
@@ -153,8 +155,13 @@ const internalNginx = {
|
|
|
|
|
|
const locationRendering = async () => {
|
|
|
for (let i = 0; i < host.locations.length; i++) {
|
|
|
- let locationCopy = Object.assign({}, host.locations[i]);
|
|
|
-
|
|
|
+ let locationCopy = Object.assign({}, {access_list_id : host.access_list_id}, {certificate_id : host.certificate_id},
|
|
|
+ {ssl_forced : host.ssl_forced}, {caching_enabled : host.caching_enabled},
|
|
|
+ {block_exploits : host.block_exploits}, {allow_websocket_upgrade : host.allow_websocket_upgrade},
|
|
|
+ {http2_support : host.http2_support}, {hsts_enabled : host.hsts_enabled},
|
|
|
+ {hsts_subdomains : host.hsts_subdomains}, {access_list : host.access_list},
|
|
|
+ {certificate : host.certificate}, host.locations[i]);
|
|
|
+
|
|
|
if (locationCopy.forward_host.indexOf('/') > -1) {
|
|
|
const splitted = locationCopy.forward_host.split('/');
|
|
|
|
|
|
@@ -162,12 +169,16 @@ const internalNginx = {
|
|
|
locationCopy.forward_path = `/${splitted.join('/')}`;
|
|
|
}
|
|
|
|
|
|
+ // logger.info('locationCopy = ' + JSON.stringify(locationCopy, null, 2));
|
|
|
+
|
|
|
// eslint-disable-next-line
|
|
|
renderedLocations += await renderer.parseAndRender(template, locationCopy);
|
|
|
}
|
|
|
+
|
|
|
};
|
|
|
|
|
|
locationRendering().then(() => resolve(renderedLocations));
|
|
|
+
|
|
|
});
|
|
|
},
|
|
|
|
|
|
@@ -183,6 +194,8 @@ const internalNginx = {
|
|
|
logger.info('Generating ' + host_type + ' Config:', host);
|
|
|
}
|
|
|
|
|
|
+ // logger.info('host = ' + JSON.stringify(host, null, 2));
|
|
|
+
|
|
|
let renderEngine = new Liquid({
|
|
|
root: __dirname + '/../templates/'
|
|
|
});
|
|
|
@@ -210,6 +223,7 @@ const internalNginx = {
|
|
|
}
|
|
|
|
|
|
if (host.locations) {
|
|
|
+ // logger.info ('host.locations = ' + JSON.stringify(host.locations, null, 2));
|
|
|
origLocations = [].concat(host.locations);
|
|
|
locationsPromise = internalNginx.renderLocations(host).then((renderedLocations) => {
|
|
|
host.locations = renderedLocations;
|