Ved én installasjon kan pip ta en proxy direkte fra kommandolinjen. Slik prøver du en rute uten å lagre varige bruker- eller systeminnstillinger:

python -m pip --proxy http://203.0.113.10:8080 install requests

Bytt dokumentasjons-IP-en med et endepunkt fra tjenesten din eller listen over HTTP-proxyer. Med python -m pip blir det også klarere hvilket Python-miljø som brukes, fremfor å anta at en egen pip-kjørbar fil tilhører dette miljøet.

URL-en til proxyen beskriver selve proxytilkoblingen. Den kan starte med http:// selv om pakkeindeks og nedlastinger bruker HTTPS gjennom CONNECT.

Hvis pip stadig bruker en annen innstilling

For pips egne valg har kommandolinjeargumenter prioritet foran miljøvariabler, som igjen går foran konfigurasjonsfiler. Filer kan finnes på globalt nivå, brukernivå og i det virtuelle miljøet. PIP_CONFIG_FILE kan angi en ekstra konfigurasjonsfil.

python -m pip config debug

Dette viser kildene pip leser innstillinger fra. Undersøk resultatet lokalt: filer og miljøverdier kan inneholde private URL-er eller påloggingsdata.

Se også på PIP_PROXY og ordinære proxy-miljøvariabler for HTTP/HTTPS. De ligger ikke alle i samme innstillingslag; standard håndtering av proxyvariabler kan fortsatt påvirke den faktiske ruten du feilsøker. Ikke gå ut fra at alle mulige kilder er fjernet ved å slette én linje i brukerfilen.

Proxyvalget løser ikke problemer med sertifikattillit

Hvis ruten når HTTPS-tjenesten, men sertifikatsjekken feiler, undersøk hvilket sertifikat klienten mottok. Et godkjent inspeksjonsoppsett kan kreve en godkjent CA-samling:

python -m pip --proxy http://203.0.113.10:8080 \
  --cert /path/to/approved-ca-bundle.pem install requests

--trusted-host gjør en vert betrodd selv uten gyldig HTTPS. Valget setter ikke proxyens IP og skal ikke være standardløsningen ved en sertifikatfeil. Korriger i stedet endepunktet eller tillitsoppsettet.

I pip 24.2 ble systemsertifikater tatt i bruk sammen med certifi som standard på støttede kjøremiljøer. Eldre pip brukte ikke operativsystemets CA-lager automatisk. Det kan forklare at en godkjent organisasjons-CA fungerer i ett Python-miljø, men ikke finnes i et annet.

Proxyargumentet for én kommando gjelder ikke etter at den er ferdig. Hvis du senere lagrer proxyen permanent, velg det omfanget du faktisk vil ha, slik at ikke alle Python-miljøene blir avhengige av et endepunkt som bare skulle testes.

Relaterte artikler