HTTP-proxyanmodninger: absolutte URL'er kontra Host-headeren
Hold det absolutte anmodningsmål og Host-feltet konsistente, når du sender en HTTP/1.1-anmodning gennem en eksplicit proxy.
Hvilken vært mener denne HTTP/1.1-proxyanmodning?
GET http://first.example/path HTTP/1.1
Host: second.example
Meddelelsen er inkonsistent. I en anmodning i absolut form sendt til en proxy kræver RFC 9112, at den videresendte Host-værdi kommer fra anmodningens mål. Videresendelse af Host: first.example er den forventede adfærd.
Ved en test på et udviklingssite skal værtsnavnet for ressourcen være sammenhængende i URL'en og i HTTP-authority. Lever den ønskede navn-til-adresse-mapping ved det hop, der står for opløsningen. En modstridende Host-tilsidesættelse er ikke en portabel instruktion til valg af backend.
HTTPS er anderledes. Når en almindelig CONNECT-tunnel er åbnet, foregår TLS og den indre HTTP-udveksling indeni den. En proxy, der ikke opsnapper, kan normalt ikke omskrive det krypterede Host-felt. CONNECT-destination, TLS-navn og certifikatidentitet forbliver separate roller.
Sletning af Via, Referer eller Cache-Control forliger ikke de to authorities. Notér anmodningens form og det punkt, hvor du observerede headeren, før du diagnosticerer en proxy-omskrivning.