Menyetel proxy HTTP untuk skema HTTP tidak otomatis mengonfigurasi permintaan HTTPS. Di LWP, skema URL yang diminta menentukan pemetaan proxy mana yang dipakai.

Titik akhir bersama yang eksplisit dapat ditetapkan untuk kedua skema:

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

Untuk permintaan publik yang diizinkan, daftar proxy HTTP menawarkan kandidat untuk URL proxy LWP bersama. Tujuannya HTTPS sedangkan URL proxy-nya HTTP. Itu adalah susunan CONNECT yang normal, bukan alasan mengganti nama skema proxy menjadi HTTPS.

Jika aplikasi seharusnya membaca variabel lingkungan proxy, pilih penemuan itu melalui env_proxy. Variabel yang ada di shell tidak berguna jika klien ini tidak pernah mengimpornya. Periksa pengaturan HTTPS yang relevan dan aturan lewatan, bukan hanya nilai HTTP.

Pertahankan sumber konfigurasi yang dipilih secara sengaja. Mengimpor pengaturan lingkungan setelah penetapan eksplisit dapat membuat hasil berbeda dari titik akhir yang tampaknya dipilih kode.

Kepercayaan sertifikat dan autentikasi situs web tetap terpisah dari perutean proxy. Diagnosis koneksi langsung, penolakan proxy, dan kesalahan TLS berikutnya pada tahapnya masing-masing alih-alih mengganti semua pengaturan sekaligus.

Artikel terkait