GOPROXY et HTTP_PROXY : source des modules et proxy sortant
Séparez le choix de la source des modules de Go de la route du proxy sortant utilisée pour atteindre cette source.
GOPROXY sélectionne un service de téléchargement de modules Go. HTTP_PROXY et HTTPS_PROXY sélectionnent un intermédiaire réseau utilisé pour atteindre une destination. Un proxy HTTP générique n’implémente généralement pas l’API de métadonnées et de fichiers du service de modules.
Politique de la source des modules
go env GOPROXY GOPRIVATE GONOPROXY
Ces valeurs indiquent où Go obtient les modules. GONOPROXY sélectionne les chemins de modules qui contournent le service de modules. De même, GOPROXY=direct demande l’accès au contrôle de version pour les modules ; il ne désactive pas les variables de proxy HTTP pour toutes les connexions.
La route réseau
Une commande exécutée dans un shell POSIX peut fournir un proxy sortant indépendamment de la source du module :
HTTPS_PROXY=http://203.0.113.10:8080 go mod download
Remplacez le point de terminaison de documentation et conservez la valeur prévue de GOPROXY. Pour les téléchargements de modules publics autorisés à utiliser des proxys HTTP publics, choisissez un candidat dans la liste des proxys HTTP. Utilisez NO_PROXY pour les destinations du transport HTTP qui doivent rester directes.
Selon la politique des modules, les téléchargements peuvent contacter un service de modules, un service de sommes de contrôle, un hôte d’artefacts ou un serveur de contrôle de versions. Lorsqu’une requête échoue, identifiez à la fois la source choisie par Go et la route utilisée pour atteindre cet hôte précis. La commande go env seule n’affiche pas toutes les variables d’environnement du proxy et ne prouve pas quelle connexion le téléchargement a ouverte.