HTTP-proxybegäranden: absoluta URL:er kontra Host-headern
Håll den absoluta begärandemålet och Host-fältet samstämmiga när du gör en HTTP/1.1-begäran via en explicit proxy.
Vilken värd avser den här HTTP/1.1-proxybegäran?
GET http://first.example/path HTTP/1.1
Host: second.example
Meddelandet är inkonsekvent. I en begäran i absolut form som skickas till en proxy kräver RFC 9112 att det vidarebefordrade Host-värdet kommer från begärans mål. Att vidarebefordra Host: first.example är det förväntade beteendet.
Vid ett test på en utvecklingswebbplats ska resursens värdnamn vara samstämmigt i URL:en och i HTTP-authority. Tillhandahåll den önskade namn-till-adress-mappningen vid det hopp som ansvarar för upplösningen. En motstridig Host-överskridning är inte en portabel instruktion för val av backend.
HTTPS skiljer sig. När en vanlig CONNECT-tunnel har öppnats sker TLS och det inre HTTP-utbytet inuti den. En proxy som inte avlyssnar kan vanligtvis inte skriva om det krypterade Host-fältet. CONNECT-målet, TLS-namnet och certifikatets identitet förblir separata roller.
Att ta bort Via, Referer eller Cache-Control förenar inte de två authority. Notera begärans form och punkten där du observerade headern innan du diagnostiserar en proxy-omskrivning.