Untuk satu instalasi, pip menerima proxy langsung pada baris perintah. Anda bisa mencoba rute tanpa menulis konfigurasi pengguna atau sistem permanen:

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

Gunakan endpoint dari layanan Anda atau daftar proxy HTTP menggantikan IP dokumentasi. Menjalankan python -m pip juga memperjelas lingkungan Python yang dituju dibanding menganggap program pip terpisah milik lingkungan itu.

URL proxy menjelaskan koneksi ke proxy. URL dapat diawali http:// sementara indeks paket dan unduhan memakai HTTPS melalui CONNECT.

Jika pip terus memilih pengaturan lain

Untuk opsi milik pip, argumen perintah mengalahkan variabel lingkungan, yang mengalahkan berkas konfigurasi. Berkas dapat berada di tingkat global, pengguna, atau lingkungan virtual. PIP_CONFIG_FILE dapat memilih berkas tambahan.

python -m pip config debug

Ini menampilkan sumber konfigurasi yang dipertimbangkan pip. Tinjau secara lokal: berkas atau nilai lingkungan dapat memuat URL pribadi atau kredensial.

Periksa juga PIP_PROXY dan variabel lingkungan proxy HTTP/HTTPS biasa. Semuanya bukan lapisan yang sama; penanganan lingkungan proxy standar masih dapat memengaruhi rute sebenarnya. Jangan anggap menghapus satu entri pengguna menghilangkan semua sumber.

Opsi proxy tidak memperbaiki kepercayaan sertifikat

Jika rute mencapai layanan HTTPS tetapi verifikasi gagal, cari tahu sertifikat mana yang diterima klien. Pengaturan inspeksi yang diizinkan mungkin memerlukan bundel CA yang disetujui:

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

--trusted-host menandai host tepercaya meski tanpa HTTPS valid. Opsi itu tidak mengatur IP proxy dan tidak seharusnya menjadi tanggapan rutin atas kesalahan sertifikat. Perbaiki endpoint atau konfigurasi kepercayaan.

pip 24.2 menjadikan sertifikat sistem bersama certifi sebagai bawaan pada runtime yang didukung. Pip sebelumnya tidak otomatis memakai penyimpanan CA sistem operasi. Ini dapat menjelaskan mengapa CA organisasi yang disetujui bekerja pada satu lingkungan Python tetapi hilang pada yang lain.

Argumen proxy untuk satu perintah tidak berlaku lagi setelah perintah selesai. Jika kemudian menyimpan pengaturan permanen, tempatkan pada cakupan yang memang dimaksud, bukan membuat semua lingkungan Python bergantung pada endpoint yang hanya sedang diuji.

Artikel terkait