Glossaire

Qu'est-ce qu'un proxy HTTP ?

Un proxy HTTP est un serveur proxy qui comprend et transfère le trafic HTTP (et via la méthode CONNECT, HTTPS), opérant au niveau de la couche applicative et capable d'inspecter, de modifier ou de mettre en cache les données de requête et de réponse pour le HTTP simple.

Comprenez en quoi les proxys HTTP diffèrent de SOCKS5, ce que fait HTTP CONNECT, et pourquoi les proxys HTTP sont le protocole par défaut pris en charge par la plupart des scrapers et des clients HTTP.

Expliqué

Un proxy HTTP est le type de serveur proxy le plus courant. Il comprend HTTP au niveau de la couche applicative : lorsque votre client envoie une requête, le proxy peut lire l'URL, les en-têtes et (pour le HTTP simple) le corps, avant de transmettre la requête à la destination. Pour HTTPS, le proxy utilise la méthode CONNECT pour établir un tunnel TCP vers la destination, après quoi il se contente de relayer les octets chiffrés sans en voir le contenu.

La plupart des services proxy commerciaux — y compris les fournisseurs résidentiels, ISP et datacenter — exposent des points de terminaison proxy HTTP, car chaque client et bibliothèque HTTP les prend en charge nativement. Définir les variables d'environnement `HTTP_PROXY` et `HTTPS_PROXY`, passer `proxies={...}` à `requests` de Python, ou configurer un indicateur de lancement dans Playwright fonctionnent tous immédiatement avec des URL de proxy HTTP comme `http://user:pass@gate.shifter.io:10000`.

La différence entre HTTP et SOCKS5 est principalement architecturale. Les proxies HTTP opèrent au niveau de la couche applicative (peuvent analyser HTTP) ; SOCKS5 opère au niveau de la couche transport (se contente de transférer des octets TCP/UDP). Pour le scraping HTTPS, la différence est surtout cosmétique — les deux finissent par tunneliser des octets chiffrés — et la prise en charge du proxy HTTP est plus universelle dans l'ensemble des outils.

Comment ça fonctionne

Pour le HTTP simple, votre client envoie la requête complète au proxy (`GET http://example.com/path HTTP/1.1` avec une URL absolue), le proxy lit l'URL, ouvre une connexion vers la destination, transmet la requête et relaie la réponse. Pour le HTTPS, le client envoie d'abord une requête `CONNECT example.com:443` au proxy, le proxy ouvre un tunnel TCP vers la destination, et à partir de ce moment le client et le serveur communiquent en TLS de bout en bout à travers le proxy, qui se contente de faire transiter des octets chiffrés.

L'authentification se fait généralement via l'en-tête `Proxy-Authorization` (authentification Basic avec nom d'utilisateur:mot de passe) ou en encodant les identifiants dans l'URL du proxy (`http://user:pass@host:port`). Le ciblage géographique et les paramètres de session dans les services commerciaux sont généralement encodés dans le nom d'utilisateur (`customer-USER-country-us-session-12345`).

Types

Proxy HTTP direct

La forme utilisée par les services de proxy commerciaux. Se place devant les clients et les représente sur Internet. Les clients configurent explicitement l'adresse du proxy.

Proxy HTTP inverse

Se place devant les serveurs backend. Utilisé pour l'équilibrage de charge, la mise en cache et la terminaison SSL (Nginx, HAProxy, Cloudflare). Les clients ne savent pas que le proxy inverse est présent.

Tunnel HTTP CONNECT

Le mécanisme utilisé par les proxys HTTP pour gérer HTTPS. Le client demande au proxy d'ouvrir un tunnel vers la destination, puis communique en TLS à travers le tunnel de bout en bout avec la destination.

Proxy HTTPS

Un proxy HTTP avec lequel vous communiquez via TLS. La connexion client-proxy est chiffrée (en plus du TLS de bout en bout via le tunnel CONNECT). Moins courant ; utilisé dans les configurations axées sur la confidentialité.

Cas d'utilisation courants

Scraping de contenu HTTP/HTTPS (le cas d'usage dominant)
Accès API via une sortie à IP fixe
Filtrage de sortie interne en entreprise
Mise en cache de contenu statique pour économiser de la bande passante
Authentification centralisée du trafic sortant
Routage HTTP par application dans les environnements de développement / test
FAQ

Questions fréquentes Questions FAQ

Questions fréquentes sur proxy http.

Un proxy HTTP opère au niveau de la couche applicative et peut analyser les requêtes HTTP ; un proxy SOCKS5 opère au niveau de la couche transport et transfère des octets TCP/UDP bruts. Pour HTTPS, la différence est essentiellement cosmétique — les deux finissent par tunneliser des octets chiffrés. SOCKS5 est préférable lorsque vous devez proxifier des protocoles non-HTTP (FTP, SMTP, BitTorrent, jeux en ligne).