http: add 'X-Forwarded-For' in response header

This commit is contained in:
nadoo 2018-01-14 21:16:54 +08:00
parent c51cc70b0b
commit 7e9e737922

View File

@ -166,6 +166,15 @@ func (s *HTTP) Serve(c net.Conn) {
respHeader.Set("Proxy-Connection", "close") respHeader.Set("Proxy-Connection", "close")
respHeader.Set("Connection", "close") respHeader.Set("Connection", "close")
if s.xff {
if respHeader.Get("X-Forwarded-For") != "" {
respHeader.Add("X-Forwarded-For", ",")
}
respHeader.Add("X-Forwarded-For", rc.RemoteAddr().(*net.TCPAddr).IP.String())
respHeader.Add("X-Forwarded-For", ",")
respHeader.Add("X-Forwarded-For", s.selfip)
}
var respBuf bytes.Buffer var respBuf bytes.Buffer
writeFirstLine(proto, code, status, &respBuf) writeFirstLine(proto, code, status, &respBuf)
writeHeaders(respHeader, &respBuf) writeHeaders(respHeader, &respBuf)