Host Header
Ein Host Header ist der von einem HTTP-Client als Bestandteil der HTTP-Headers gesendete Hostname. Er kann von einem HTTP-Server zur Unterscheidung virtueller Hosts genutzt werden und dient damit im weiteren Sinne der Namensauflösung.
Diese namensbasierte Unterscheidung virtueller Hosts hat (gegenüber IP-basierten virtuellen Hosts) den Vorteil, dass Websites unterschiedlichen Namens
- unter einer gemeinsamen IP-Adresse (und unter einem gemeinsamen Port) betrieben werden können
- dennoch inhaltlich voneinander getrennt verwaltet werden können
und ist damit eine Möglichkeit, einem Engpass an IP-Adressen zu begegnen.
Zur Unterscheidung wertet der (entsprechend zu konfigurierende) Webserver den im Request enthaltenen Host: Header aus.
Konfiguration
Neben der Anpassung der Konfiguration des Webservers ist darauf zu achten, dass der DNS-Server jedem der unterschiedlichen Hostnamen die richtige (in diesem Fall gleiche) IP-Adresse zuordnen muss.
Grenzen
- Einige ältere Http-Clients sind nicht kompatibel zu namensbasierten virtuellen Hosts. Wenn auch solche Clients bedient werden sollen, müssen zusätzliche Maßnahmen getroffen werden.
- Bei SSL/TLS nutzenden Servern ist die Verwendung von Server Name Indication notwendig.
- Einige Techniken des Bandbreiten-Managements funktionieren nur, wenn unterschiedliche Hosts auch unterschiedliche IP-Adressen haben.