Periksa badan respons CONNECT proksi yang gagal dengan curl
Hantar CONNECT diagnostik yang terbentuk dengan betul terus ke proksi HTTP dan simpan pengepala serta badan kegagalan HTTP secara berasingan.
Proksi yang menolak CONNECT boleh memulangkan dokumen ralat HTTP yang menerangkan dasaranya atau kegagalan sambungan seterusnya. Untuk diagnostik dibenarkan terhadap proksi HTTP biasa, curl boleh menghantar permintaan itu terus dan menyimpan balasannya:
curl --proxy '' --http1.1 --max-time 10 \
--request CONNECT \
--request-target service.example:443 \
--header 'Host: service.example:443' \
--dump-header tunnel.headers \
--output tunnel.body \
http://proxy.example:8080/
URL akhir menuju pendengar proksi. Untuk perbandingan proksi awam yang dibenarkan, senarai proksi HTTP menyediakan calon untuk URL pendengar itu. --request membekalkan token kaedah; --request-target membekalkan kuasa CONNECT. Mengasingkan keduanya menghasilkan CONNECT service.example:443 HTTP/1.1.
Pilihan proksi kosong menghalang curl daripada menghalakan diagnostik ini melalui proksi warisan lain. Perintah itu sengaja meninggalkan --fail supaya dokumen ralat HTTP dapat dikekalkan.
Percubaan tanpa pengesahan mungkin berhenti pada 407 sebelum mencapai kegagalan yang disiasat. Gunakan susunan pengesahan yang dimaksudkan proksi apabila menghasilkan semula permintaan yang disahkan.
Ini untuk memeriksa respons kegagalan. Jika proksi memulangkan 2xx, sambungan menjadi terowong dan bukan pemindahan badan HTTP biasa. Diagnostik kaedah tersuai ini tidak memulakan pertukaran TLS destinasi dan boleh mencapai had masanya pada terowong terbuka yang diterima.
Gunakan aliran permintaan --proxy biasa untuk pengambilan HTTPS sebenar. Simpan status dan badan diagnostik bersama proksi dan sasaran khususnya.