Gantikan 127.0.0.1:8080 dengan titik akhir perkhidmatan anda atau daripada senarai proksi HTTP, kemudian jalankan ini ke destinasi HTTPS yang tidak berbahaya:

curl --noproxy '' --proxy http://127.0.0.1:8080 --connect-timeout 5 --max-time 15 --verbose https://example.com/

Alamat gelung balik merujuk kepada pendengar pada komputer anda sendiri. Arahan ini memilihnya secara nyata, mengosongkan senarai pengecualian curl untuk panggilan ini, dan membenarkan lima saat untuk membentuk sambungan serta lima belas saat keseluruhannya. Tetapan proksi pelayar dan sistem tidak diubah.

Gunakan fail boleh laksana curl yang sebenar jika shell menjadikan curl alias bagi program lain; curl --version mengenal pasti binaan. Jika pendengar itu sendiri memerlukan TLS, gunakan skema URL proksi yang dinyatakan dalam dokumentasinya.

Baca empat hasil, bukan satu tanda berjaya

  1. Disambungkan kepada proksi yang dipilih: alamat dan port boleh dicapai.
  2. CONNECT diterima: proksi membuka terowong ke destinasi HTTPS.
  3. Sijil destinasi disahkan: TLS selesai dengan semakan kepercayaan yang dijangka.
  4. Respons destinasi diterima: periksa status dan kandungannya untuk hasil yang diperlukan oleh aplikasi.

Terowong yang berfungsi boleh disusuli respons 403 atau 429 daripada destinasi. curl juga boleh tamat dengan berjaya selepas menerima respons ralat HTTP, maka catat status respons dan hasil ralat curl. Sambungan TCP atau CONNECT yang berjaya sahaja tidak mencukupi.

Hasil padat untuk perbandingan berulang

Dalam shell seakan Unix, buang badan respons dan cetak status terowong, status destinasi, rakan sambungan serta masa berlalu:

curl --noproxy '' --proxy http://127.0.0.1:8080 --connect-timeout 5 --max-time 15 --silent --show-error --output /dev/null --write-out 'http=%{http_code} connect=%{http_connect} peer=%{remote_ip} total=%{time_total}\n' https://example.com/

http_connect menerangkan respons terowong; http_code menerangkan respons HTTP terakhir. remote_ip ialah rakan sambungan curl, bukan ukuran bebas bagi alamat keluar proksi. Pada sistem lain, gantikan /dev/null atau simpan badan respons.

Jika ujian gagal, cari langkah pembentukan sambungan atau pemindahan yang gagal dan bandingkan destinasi yang sama secara terus apabila laluan itu dibenarkan:

curl --noproxy '*' --connect-timeout 5 --max-time 15 --verbose https://example.com/

--noproxy '*' memintas proksi. Kegagalan pengesahan sijil pada kedua-dua laluan menunjuk kepada masalah kepercayaan bersama; sambungan terus yang berjaya dengan CONNECT ditolak menunjuk kepada pengesahan atau dasar proksi. Semak output terperinci sebelum berkongsi kerana ia boleh mengandungi maklumat pengenalan.

Simpan titik akhir, sasaran dan cap masa bersama hasilnya. Ini menetapkan apa yang berjaya bagi permintaan itu; ketersediaan masa depan, privasi dan prestasi di bawah beban memerlukan bukti berasingan.

Artikel berkaitan