Spec-Zone.ru › HTTP

Методы: CONNECT

Метод запроса CONNECT

Baseline Широко доступно

Эта функция хорошо зарекомендовала себя и работает на множестве устройств и в разных версиях браузеров. Она доступна во всех браузерах с июля 2015 года.

  • Подробнее
  • Полная информация о совместимости
>

Метод HTTP CONNECT запрашивает, чтобы прокси-сервер установил HTTP-туннель до целевого сервера и, если это удалось, без изменений пересылал данные в обоих направлениях до закрытия туннеля.

Целевой ресурс запроса для этого метода уникален: он состоит только из имени хоста и номера порта назначения туннеля, разделённых двоеточием (подробности см. в разделе Синтаксис). Любой код успешного ответа 2XX означает, что прокси-сервер переключится в «режим туннеля», а любые данные в теле успешного ответа поступают от сервера, указанного в целевом ресурсе запроса.

Если веб-сайт находится за прокси-сервером, а сетевые правила требуют, чтобы весь внешний трафик проходил через прокси-сервер, метод CONNECT позволяет установить соединение TLS (HTTPS) с этим веб-сайтом:

  • Клиент просит прокси-сервер туннелировать соединение TCP до нужного адресата.
  • Прокси-сервер устанавливает защищённое соединение с сервером от имени клиента.
  • После установления соединения прокси-сервер продолжает передавать поток TCP от клиента и к нему.

Помимо обеспечения безопасного доступа к веб-сайтам за прокси-серверами, HTTP-туннель позволяет передавать по протоколу HTTP(S) трафик, который иначе был бы ограничен (например, SSH или FTP).

CONNECT — это метод с переходом от узла к узлу: прокси-серверы будут пересылать запрос CONNECT, только если перед исходным сервером находится ещё один входящий прокси-сервер, поскольку большинство исходных серверов не реализуют CONNECT.

Предупреждение: Если вы используете прокси-сервер с поддержкой CONNECT, ограничьте его использование набором известных портов или настраиваемым списком безопасных целевых ресурсов запросов. Создание туннеля к произвольным серверам сопряжено со значительными рисками, особенно если назначением является известный или зарезервированный порт TCP, не предназначенный для веб-трафика. Например, прокси-сервер с недостаточно строгими настройками могут использовать для пересылки такого трафика, как SMTP, чтобы рассылать спам.

Запрос содержит тело Нет
Успешный ответ содержит тело Нет
Безопасный Нет
Идемпотентный Нет
Кэшируемый Нет
Разрешён в HTML-формах Нет

Синтаксис

CONNECT <host>:<port> HTTP/1.1
<host>

Имя хоста, которым может быть зарегистрированное доменное имя (например, example.com) или IP-адрес (IPv4, IPv6).

<port>

Номер порта в десятичной системе счисления (например, 80, 443 must). Порт по умолчанию не задан, поэтому клиент должен указать его.

Примеры

>

Авторизация на прокси-сервере

Запрос к прокси-серверам, которым для создания туннеля требуется авторизация, выглядит следующим образом. Подробнее см. в описании заголовка Proxy-Authorization.

CONNECT server.example.com:80 HTTP/1.1
Host: server.example.com:80
Proxy-Authorization: basic aGVsbG86d29ybGQ=

Спецификации

Спецификация
Семантика HTTP>
# CONNECT>

Совместимость с браузерами

Компьютеры Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome для Android Firefox для Android Opera для Android Safari для iOS Samsung Internet Android WebView WebView для iOS
CONNECT 1 12 1 15 1 18 4 14 1 1.0 4.4 1

См. также

  • Методы HTTP-запросов
  • Коды состояния HTTP-ответов
  • Заголовки HTTP
  • Прокси-сервер — статья в глоссарии
  • Заголовок Proxy-Authorization
  • Как использовать SSH через HTTP-прокси — dimoulis.net (2023)

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Methods/CONNECT

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API