According to [RFC 2616](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html), which defines HTTP/1.1, the `Host:` header is mandatory.

> 
> A client MUST include a Host header field in all HTTP/1.1 request messages .
> 
> 
> 

But the [PHP manual](http://php.net/manual/en/reserved.variables.server.php) implies that it could be empty:

> 
> 'HTTP\_HOST': Contents of the Host: header from the current request, if there is one.
> 
> 
> 

In which situations could this header, and thus `$_SERVER['HTTP_HOST']`, be empty? Could my application depend on its being there?