On Mon, 22 Jan 1996, Shel Kaphan wrote:
> It's conceivable that a gateway would want to translate requests it
> receives on various ports to other ports on the other side (the
> inside) of a firewall. If the original port were part of this header
[...]
>
> Maybe that is outlandish -- I'm not so sure. It's not that much of a
> burning issue for me, though it feels more sensible to me to leave the
> port info in if it's there, rather than exclude it.
The point of the Host: header is to provide the information lost between
the original URL and the non-proxy server request. I understand that
if port proxying isn't implemented, the request port will be known to
the server at some layer but it seems much cleaner to me to include
port with the host: header. No reason it couldn't be optional UNLESS
port mapping was occuring in which case it would be required and
in particular required for the proxy doing the port mapping to add the
port. We are now introducing the host: header in part because the
original protocol deleted information. Why repeat that mistake for
the sake of saving a few bytes of data?
Dave Morris