Ja. Den.
Hinweis: Unter Apache 2 müssen UseCanonicalName = On und
ServerName gesetzt werden. Ansonsten reflektiert dieser Wert den
Hostnamen, der vom Client gesendet wurde und vorgetäuscht werden
kann. Es ist nicht sicher, sich in einem sicherheitsabhängigen
Umfeld auf diesen Wert zu verlassen.
Aber was passiert denn, wenn ich mehrere Virtual Hosts im Apache definiere und die alle auf die gleiche Codebasis loslasse? Führt der canonical name dann dazu, dass für alle der gleiche SERVER_HOST gesetzt wird?
- Wenn Du dort JEWEILS den
ServerNamekonfiguriert hast, erscheint mit den oben empfohlenen Erstellungen genau der als$_SERVER['SERVER_NAME']konfigurierte. - Hast Du den antelefonierten Hostname als
ServerAliaskonfiguriert, dann erscheint (nur) mit den oben empfohlenen Erstellungen beim Befragen von$_SERVER['SERVER_NAME']ebenfalls das, was alsServerNamekonfiguriert wurde, beim Befragen von$_SERVER['HTTP_HOST']der „antelefonierte Hostname“. - Ist für den „antelefonierte Hostname“ gar kein virtueller Host konfiguriert, erscheint mit den obigen Einstellungenn der als
ServerNamefür den _default_host konfigurierte Name.
D.h. man braucht eine Lösung, die vom hostname Header unabhängig ist, find ich.
Sven will (aus nachvollziehbaren Gründen) das Gegenteil, er will ja gerade in Abhängigkeit vom Host aus dem HTTP-Request-Header antworten. Zitat: „als Weiche, für das richtige Ausliefern der Daten“