Pourquoi APT n'utilise pas CONNECT pour chaque téléchargement
Le transfert HTTP ordinaire et le tunnel HTTPS utilisent des conversations proxy différentes. Un service uniquement CONNECT peut ne pas prendre en charge les requêtes qu'un dépôt HTTP produit.
« Le proxy accepte CONNECT » ne signifie pas qu'il accepte chaque requête qu'APT enverra.
Pour un dépôt HTTP ordinaire, APT peut utiliser le transfert proxy HTTP normal : le proxy reçoit une requête HTTP identifiant la ressource de destination. Pour HTTPS via un proxy HTTP, le client établit normalement un tunnel CONNECT, puis négocie la session TLS de la destination à travers celui-ci.
| Destination | Conversation typique avec un proxy HTTP |
|---|---|
| Dépôt HTTP | Transférer une requête HTTP |
| Dépôt HTTPS | CONNECT, puis TLS de la destination |
Un service n'acceptant que des tunnels peut rejeter une requête transférée ordinaire. Un HTTP 405 mérite un examen de la méthode réelle, de l'émetteur de la réponse et de la politique du proxy ; il ne prouve pas qu'APT ne prend pas en charge SOCKS ni que son mot de passe est incorrect.
Comparez le comportement pris en charge du service avec la documentation de transport d'APT et la sémantique de CONNECT. Utilisez un service approuvé compatible ou une URL de dépôt prise en charge. Pour les dépôts publics où les intermédiaires publics sont autorisés, la liste de proxys HTTP propose des candidats à vérifier au regard de ces exigences. Ne supposez pas que l'ajout de https:// à l'adresse du proxy change le protocole du dépôt ou transforme chaque requête en tunnel.