Для одной установки pip принимает прокси прямо в командной строке. Можно проверить маршрут, не записывая постоянную пользовательскую или системную конфигурацию:

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

Вместо адреса для документации используйте точку своего сервиса или из списка HTTP-прокси. Запуск python -m pip также яснее указывает нужную среду Python, чем предположение, что отдельный исполняемый pip принадлежит ей.

URL прокси описывает подключение к прокси. Он может начинаться с http://, хотя индекс пакетов и загрузки используют HTTPS через CONNECT.

Если pip продолжает выбирать другую настройку

Для собственных параметров pip аргументы командной строки перекрывают переменные окружения, а те — файлы конфигурации. Файлы могут быть глобальными, пользовательскими или для виртуальной среды. PIP_CONFIG_FILE позволяет выбрать дополнительный файл.

python -m pip config debug

Это выводит источники конфигурации, учитываемые pip. Изучайте локально: файлы и значения окружения могут содержать частные URL или данные доступа.

Проверьте также PIP_PROXY и обычные переменные окружения HTTP/HTTPS-прокси. Они не все относятся к одному слою; стандартная обработка прокси-окружения всё ещё может влиять на реальный маршрут. Не считайте, что удаление одной пользовательской записи убрало все источники.

Параметр прокси не исправляет доверие сертификатов

Если маршрут достигает HTTPS-службы, но проверка не проходит, выясните, какой сертификат получил клиент. Авторизованная система инспекции может требовать одобренный набор CA:

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

--trusted-host помечает узел доверенным даже без действующего HTTPS. Он не задаёт IP прокси и не должен быть обычной реакцией на ошибку сертификата. Исправьте конечную точку или настройки доверия.

pip 24.2 ввёл системные сертификаты наряду с certifi по умолчанию в поддерживаемых средах выполнения. Более ранний pip не использовал хранилище CA операционной системы автоматически. Это может объяснить, почему одобренный CA организации работает в одной среде Python, но отсутствует в другой.

Параметр прокси одной команды перестаёт действовать после её завершения. Если позже сохраните постоянную настройку, задайте её в нужной области, не привязывая каждую среду Python к точке, которую лишь тестировали.

Похожие статьи