Pretpostavimo da east.proxy.example i west.proxy.example vode na isti obični HTTP proksi listener. Klijent koji koristi bilo koje od tih imena može poslati:

GET http://www.example.org/report HTTP/1.1
Host: www.example.org

Zahtjev identifikuje web lokaciju. Ne nosi alias proksija koji je klijent razriješio prije otvaranja TCP-a. Zato Express hostname izveden iz Host-a ne može odabrati rutu na osnovu tih proksi poddomena.

Ako kontrolišete klijenta i proksi, osigurajte eksplicitni ulaz za usmjeravanje. Za proksi koji implementira oznaku X-Route:

curl --proxy http://east.proxy.example:8080 \
  --proxy-header 'X-Route: east' \
  https://www.example.org/

--proxy-header cilja komunikaciju s proksijem, uključujući CONNECT. Običan -H zaglavlje na HTTPS zahtjevu pripada unutar šifrirane HTTP razmjene s odredištem.

Server mora implementirati i autorizirati politiku usmjeravanja, a zatim potrošiti oznaku bez prosljeđivanja web lokaciji. Kao alternativu koristite zasebno konfigurirane listening endpointove ili proksi račune kao ulaze za usmjeravanje.

Za HTTPS odredišta Node prima početni tunelski zahtjev kroz connect događaj svog HTTP servera. Obični Express middleware za zahtjeve ne obrađuje taj događaj. CONNECT cilj i dalje identificira odredišni server, a ne alias proksija.

Povezani članci