From: Brad Fitzpatrick Date: Thu, 8 Oct 2015 20:37:39 +0000 (-0700) Subject: net/http/httputil: clarify NewSingleHostReverseProxy's Host header behavior X-Git-Tag: go1.6beta1~879 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=ae315999c2d5514cec17adbd37cf2438e20cbd12;p=gostls13.git net/http/httputil: clarify NewSingleHostReverseProxy's Host header behavior Fixes #10342 Change-Id: I69c69352016a8fd0b62541128c2e86b242ebbe26 Reviewed-on: https://go-review.googlesource.com/15630 Reviewed-by: Minux Ma --- diff --git a/src/net/http/httputil/reverseproxy.go b/src/net/http/httputil/reverseproxy.go index c8e113221c..95a99ddb9d 100644 --- a/src/net/http/httputil/reverseproxy.go +++ b/src/net/http/httputil/reverseproxy.go @@ -60,10 +60,13 @@ func singleJoiningSlash(a, b string) string { return a + b } -// NewSingleHostReverseProxy returns a new ReverseProxy that rewrites +// NewSingleHostReverseProxy returns a new ReverseProxy that routes // URLs to the scheme, host, and base path provided in target. If the // target's path is "/base" and the incoming request was for "/dir", // the target request will be for /base/dir. +// NewSingleHostReverseProxy does not rewrite the Host header. +// To rewrite Host headers, use ReverseProxy directly with a custom +// Director policy. func NewSingleHostReverseProxy(target *url.URL) *ReverseProxy { targetQuery := target.RawQuery director := func(req *http.Request) {