Претпоставимо да east.proxy.example и west.proxy.example воде на исти обичан HTTP прокси слушач. Клијент који користи било које од тих имена може да пошаље:

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

Захтев идентификује веб локацију. Не носи алијас проксија који је клијент разрешио пре отварања TCP-а. Зато Express hostname изведен из Host-а не може да одабере руту на основу тих прокси поддомена.

Ако контролишете клијента и прокси, обезбедите експлицитни улаз за усмеравање. За прокси који имплементира ознаку X-Route:

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

--proxy-header циља комуникацију са проксијем, укључујући CONNECT. Обичан -H заглавље на HTTPS захтеву припада унутар шифроване HTTP размене са одредиштем.

Сервер мора да имплементира и ауторизује политику усмеравања, а затим да потроши ознаку без прослеђивања веб локацији. Као алтернативу користите засебно конфигурисане listening endpoint-е или прокси налоге као улазе за усмеравање.

За HTTPS одредишта Node прима почетни тунелски захтев кроз connect догађај свог HTTP сервера. Обичан Express middleware за захтеве не обрађује тај догађај. CONNECT циљ и даље идентификује одредишни сервер, а не алијас проксија.

Повезани чланци