diff --git a/http/handler.go b/http/handler.go index bd36169..02b93e0 100644 --- a/http/handler.go +++ b/http/handler.go @@ -78,13 +78,15 @@ func (this *Handler) ServeHTTP (res http.ResponseWriter, req *http.Request) { remoteAddrStr := req.RemoteAddr if addr := req.Header.Get("CF-Connecting-IP"); addr != "" { if this.TrustCFConnectingIP { + proxy := req.RemoteAddr req.RemoteAddr = addr - remoteAddrStr = fmt.Sprintf("%s --CF-> %s", addr, req.RemoteAddr) + remoteAddrStr = fmt.Sprintf("%s --CF-> %s", addr, proxy) } } else if addr := req.Header.Get("X-Forwarded-For"); addr != "" { if this.TrustXForwardedFor { + proxy := req.RemoteAddr req.RemoteAddr = addr - remoteAddrStr = fmt.Sprintf("%s --XF-> %s", addr, req.RemoteAddr) + remoteAddrStr = fmt.Sprintf("%s --XF-> %s", addr, proxy) } } log.Println("(i)", req.Method, req.URL, "from", remoteAddrStr)