HTTP: The Definitive Guide says
An origin server that isn’t virtually hosted, and doesn’t allow resources to differ by the requested host, may ignore the Host header field value. But any origin server that does differentiate resources based on the host must use the following rules for determining the requested resource on an HTTP/1.1 request:
If the URL in the HTTP request message is absolute (i.e., contains a scheme and host component), the value in the Host header is ignored in favor of the URL.
If the URL in the HTTP request message doesn’t have a host, and the request contains a Host header, the value of the host/port is obtained from the Host header.
If no valid host can be determined through Steps 1 or 2, a 400 Bad Response response is returned to the client.
Where is "the URL in the HTTP request message"?
Is it the one in the request line (in the first line in a HTTP request, after method such as