HTTP-прокси

RFC 7230 · CONNECT · очень старый

Что это

HTTP-прокси — самая старая форма прокси в интернете. Появился фактически вместе с HTTP 1.0 в 1996 году. Клиент шлёт запрос не напрямую на целевой сервер, а на прокси-сервер, указав целевой URL в самом запросе. Прокси делает запрос от своего имени и возвращает результат.

Как работает

Для обычного HTTP:

GET http://example.com/page.html HTTP/1.1
Host: example.com
User-Agent: ...

Прокси видит целевой хост в первой строке (полный URL, а не путь как в обычном HTTP-запросе), делает свой запрос к example.com, отдаёт ответ клиенту.

CONNECT для HTTPS

Когда клиенту нужно к HTTPS-сайту, обычный GET не подходит — HTTPS шифрован. Тогда используется метод CONNECT (RFC 7231):

CONNECT example.com:443 HTTP/1.1
Host: example.com:443

Прокси отвечает 200 Connection Established и после этого просто пробрасывает TCP-байты в обе стороны — TLS-хэндшейк идёт end-to-end между клиентом и example.com, прокси не может расшифровать.

Порты и приложения

Использование сейчас

Как обход блокировок — не подходит

Если нужно обходить блокировки — используй VLESS или Trojan. HTTP-прокси годится только как «выход» из SOCKS5-VPN клиента на компе, но не как транспорт через ТСПУ.

Софт

См. также

← на главную
← на главную