когда мы используем HTTP-прокси, мы можем использовать его для посещения веб-сайтов с https.
При обычном http-проксировании браузер отправляет HTTP GET в открытом виде. HTTP-прокси анализирует строку HOST
запроса HTTP GET, чтобы узнать, какой веб-сайт хочет посетить браузер.
поскольку в обычном https браузер отправляет HTTP GET в зашифрованном виде, прокси не может узнать, какой пункт назначения хочет посетить браузер. Поэтому, когда в браузерах установлен HTTP-прокси, браузер отправляет запрос HTTP CONNECT, который показывает HOST
в текстовом виде.
Теперь у меня есть прокси-сервер, за ним скрыты несколько веб-серверов. Все они с разными IP. И только прокси знает их IP. у каждого из них есть доменное имя. Например, myproxy.com, server1.myproxy.com, server2.myproxy.com ... но когда браузер выполняет DNS-запрос для этих доменных имен, возвращаемый IP-адрес является IP-адресом прокси-сервера.
Когда браузер хочет посетить server1.myproxy.com в http, он делает запрос DNS и получает IP прокси. Затем он подключается к прокси через TCP и отправляет HTTP-запрос GET. Прокси-сервер может анализировать HTTP-запрос, чтобы узнать, какой веб-сервер браузер хочет посетить.
но если браузер хочет посетить server1.myproxy.com по адресу https, так как браузер не устанавливает прокси в качестве прокси по умолчанию, он не отправляет запрос HTTP CONNECT. Поэтому мне кажется, что прокси не сможет узнать, какой веб-сервер хочет посетить браузер.
Существуют ли способы, позволяющие прокси-серверу узнать, какой веб-сервер хочет посетить браузер? а именно, как заставить браузер отправлять HTTP-запрос CONNECT? Спасибо!