Hi,

I'm using Twisted Web server behind Nginx reverse-proxy and I'm getting backend's internal host:port from Request.getHost().

Seems like Request.host is explicitly set to socket's address (i.e. internal address) here: ​https://github.com/twisted/twisted/blob/trunk/src/twisted/web/http.py#L838 But comment at ​https://github.com/twisted/twisted/blob/trunk/src/twisted/web/http.py#L1297 and what this method does points that Request.host meant to reflect Host header of the request, i.e. user-visible hostname and port.

This creates problems for me when using Klein because it correctly uses Request.getHost() to create host part of URLs for redirects.

It seems like inconsistency in Twisted code. I'd expect Request.host should be only set from the Host request header to reflect user-visible hostname, not the internal backend server's address. Or may be I'm missing something?

Thanks for reply

--
  ilya