Fix for #458. Host header may cause some sites not to be proxyable with changeOrigin enabled

This commit is contained in:
Jan Jongboom 2013-09-15 11:38:50 +02:00 committed by indexzero
parent d60f1a9353
commit 781c038f2b

View File

@ -237,7 +237,14 @@ HttpProxy.prototype.proxyRequest = function (req, res, buffer) {
// don't revert this without documenting it!
//
if (this.changeOrigin) {
outgoing.headers.host = this.target.host + ':' + this.target.port;
outgoing.headers.host = this.target.host;
// Only add port information to the header if not default port
// for this protocol.
// See https://github.com/nodejitsu/node-http-proxy/issues/458
if (this.target.port !== 443 && this.target.https ||
this.target.port !== 80 && !this.target.https) {
outgoing.headers.host += ':' + this.target.port;
}
}
//