Установка HTTP-прокси для схемы HTTP не обязательно настраивает HTTPS-запрос. В LWP схема запрашиваемого URL определяет, какое сопоставление прокси используется.

Явную общую конечную точку можно назначить обеим схемам:

use LWP::UserAgent;

my $ua = LWP::UserAgent->new(timeout => 15);
$ua->proxy(['http', 'https'], 'http://proxy.example.net:8080');
my $response = $ua->get('https://example.com/');

Для разрешённых публичных запросов список HTTP-прокси предлагает кандидатов для общего URL прокси LWP. Назначение — HTTPS, а URL прокси — HTTP. Это обычная схема CONNECT, а не повод переименовывать схему прокси в HTTPS.

Если приложение должно читать переменные окружения прокси, включите это обнаружение через env_proxy. Переменная в оболочке бесполезна, если этот клиент никогда её не импортирует. Проверяйте соответствующую настройку HTTPS и правила обхода, а не только значение HTTP.

Сохраняйте выбранный источник конфигурации осознанно. Импорт настроек окружения после явного назначения может сделать результат отличным от конечной точки, которую код, по-видимому, выбирает.

Доверие к сертификату и аутентификация сайта остаются отдельными от маршрутизации прокси. Диагностируйте прямое соединение, отказ прокси и более позднюю ошибку TLS на их собственных этапах, а не заменяйте все настройки сразу.

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