Commit 421895fa authored by indexzero's avatar indexzero

[api] Add `x-forwarded-proto` and `x-forwarded-port` to proxied HTTP requests

parent e9b3ec9b
...@@ -344,9 +344,16 @@ HttpProxy.prototype.proxyRequest = function (req, res, options) { ...@@ -344,9 +344,16 @@ HttpProxy.prototype.proxyRequest = function (req, res, options) {
} }
// //
// Add `x-forwarded-for` header to availible client IP to apps behind proxy // Add common proxy headers to the request so that they can
// be availible to the proxy target server:
//
// * `x-forwarded-for`: IP Address of the original request
// * `x-forwarded-proto`: Protocol of the original request
// * `x-forwarded-port`: Port of the original request.
// //
req.headers['x-forwarded-for'] = req.connection.remoteAddress || req.connection.socket.remoteAddress; req.headers['x-forwarded-for'] = req.connection.remoteAddress || req.connection.socket.remoteAddress;
req.headers['x-forwarded-port'] = req.connection.remotePort || req.connection.socket.remotePort;
req.headers['x-forwarded-proto'] = res.connection.pair ? 'https' : 'http';
// //
// Emit the `start` event indicating that we have begun the proxy operation. // Emit the `start` event indicating that we have begun the proxy operation.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment