Преглед изворни кода

Merge pull request #2978 from overleaf/jpa-expose-hostname

[misc] optionally expose the hostname in the X-Served-By response header

GitOrigin-RevId: f3ac14aeb75cef8c9ed1d8cb1d649dd7f909b99b
Jakob Ackermann пре 6 година
родитељ
комит
ae068781ca

+ 7 - 0
services/web/app/src/infrastructure/Server.js

@@ -72,6 +72,13 @@ if (Settings.behindProxy) {
     next()
   })
 }
+if (Settings.exposeHostname) {
+  const HOSTNAME = require('os').hostname()
+  app.use((req, res, next) => {
+    res.setHeader('X-Served-By', HOSTNAME)
+    next()
+  })
+}
 
 webRouter.use(
   express.static(Path.join(__dirname, '/../../../public'), {

+ 3 - 0
services/web/config/settings.defaults.coffee

@@ -418,6 +418,9 @@ module.exports = settings =
 	# address and http/https protocol information.
 	behindProxy: false
 
+	# Expose the hostname in the `X-Served-By` response header
+	exposeHostname: process.env['EXPOSE_HOSTNAME'] == 'true'
+
 	# Cookie max age (in milliseconds). Set to false for a browser session.
 	cookieSessionLength: 5 * 24 * 60 * 60 * 1000 # 5 days