İrəli proxy-nin host adı sorğuda yoxdur
Adi HTTP irəli-proxy sorğusu təyinatı müəyyən edir, buna görə Host və Express host adı proxy-nin özünün ləqəblərini ayıra bilmir.
Tutaq ki, east.proxy.example və west.proxy.example eyni adi HTTP proxy dinləyicisinə yönəlir. Adlardan hər hansı birini istifadə edən müştəri göndərə bilər:
GET http://www.example.org/report HTTP/1.1
Host: www.example.org
Sorğu veb saytı müəyyən edir. O, müştərinin TCP açmazdan əvvəl həll etdiyi proxy ləqəbini daşımır. Buna görə də Express-in Host-dan əldə etdiyi host adı həmin proxy alt domenlərinə əsaslanaraq marşrut seçə bilməz.
Əgər müştəriyə və proxy-yə nəzarət edirsinizsə, açıq marşrutlaşdırma girişi təqdim edin. X-Route etiketini tətbiq edən proxy üçün:
curl --proxy http://east.proxy.example:8080 \
--proxy-header 'X-Route: east' \
https://www.example.org/
--proxy-header CONNECT daxil olmaqla proxy ilə əlaqəyə yönəlir. HTTPS sorğusundakı adi -H başlığı təyinatın şifrələnmiş HTTP mübadiləsinin içindədir.
Server marşrutlaşdırma siyasətini tətbiq etməli və icazə verməli, sonra etiketi veb sayta ötürmədən istifadə etməlidir. Alternativ olaraq, ayrıca konfiqurasiya edilmiş dinləmə son nöqtələrini və ya proxy hesablarını marşrutlaşdırma girişi kimi istifadə edin.
HTTPS təyinatları üçün Node ilkin tunel sorğusunu HTTP serverinin connect hadisəsi vasitəsilə alır. Adi Express sorğu ara proqramı həmin hadisəni idarə etmir. Onun CONNECT hədəfi hələ də təyinat serverini müəyyən edir, proxy ləqəbini deyil.