Ustawienie proxy HTTP dla schematu HTTP niekoniecznie konfiguruje żądanie HTTPS. W LWP to schemat żądanego adresu URL decyduje, które mapowanie proxy jest używane.

Jawny wspólny punkt końcowy można przypisać do obu schematów:

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/');

Dla dozwolonych żądań publicznych lista proxy HTTP oferuje kandydatów do wspólnego adresu URL proxy LWP. Miejsce docelowe to HTTPS, a adres URL proxy to HTTP. To zwykłe rozwiązanie CONNECT, a nie powód, by zmieniać nazwę schematu proxy na HTTPS.

Jeśli aplikacja ma odczytywać zmienne środowiskowe proxy, włącz to wykrywanie przez env_proxy. Zmienna obecna w powłoce jest bezużyteczna, jeśli ten klient nigdy jej nie importuje. Sprawdź odpowiednie ustawienie HTTPS i reguły pomijania, a nie tylko wartość HTTP.

Utrzymuj wybrane źródło konfiguracji świadomie. Import ustawień środowiska po jawnym przypisaniu może sprawić, że wynik będzie różny od punktu końcowego, który kod zdaje się wybierać.

Zaufanie do certyfikatów i uwierzytelnianie witryny pozostają oddzielone od routingu proxy. Diagnozuj połączenie bezpośrednie, odrzucenie przez proxy i późniejszy błąd TLS na ich własnych etapach, zamiast zastępować wszystkie ustawienia naraz.

Powiązane artykuły