Der Host Header ist das, was in der Adresszeile angegeben ist.
Wenn du im ip Block plötzlich den Host Header ip4 findest, stimmt da etwas nicht und du kannst Error 421 zurück spielen.
Nein, so einfach ist es leider nicht. ![]()
Vorweg: Ich hatte vorhin einen gemeinsamen server Block für alle drei Hosts.
Ich habe das jetzt mal auf eigenständige Blöcke umgebaut und online gestellt.…
- Wenn die ip4/ip6 Blöcke jeweils nur auf der passenden IPv4/IPv6 Adresse lauschen, wirft mir Nginx beim zweiten Request einen Error 404 um die Ohren. Der Request erreicht somit gar keinen location Block, in dem ich das abfangen könnte. Prinzipiell ist die Website dann erst recht kaputt, weil sie gar nicht mehr erreichbar ist.
- Wenn die ip4/ip6 Blöcke hingegen immer auf beiden IPv4/IPv6 Adressen lauschen, tritt das vorher diskutierte Fehlerbild auf. Aber auch hier kann ich mit dem HTTP-Host-Header baden gehen, weil er immer "korrekt" ist und daher keine Unterscheidung möglich ist:
server_name=http-debug4.fnx.li
http_host=http-debug4.fnx.li
remote_addr=2a02:[…]
request_uri=
Falls Du es testen willst: http-debug.fnx.li / http-debug4.fnx.li / http-debug6.fnx.li