พร็อกซีที่ปฏิเสธ CONNECT อาจส่งเอกสารข้อผิดพลาด HTTP กลับมาซึ่งอธิบายนโยบายหรือความล้มเหลวของการเชื่อมต่อถัดไป สำหรับการวินิจฉัยที่ได้รับอนุญาตกับพร็อกซี HTTP ทั่วไป curl สามารถส่งคำขอนั้นโดยตรงและบันทึกการตอบกลับ:

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 สุดท้ายชี้ไปที่ตัวรับฟังของพร็อกซี สำหรับการเปรียบเทียบพร็อกซีสาธารณะที่ได้รับอนุญาต รายการพร็อกซี HTTP มีผู้สมัครสำหรับ URL ตัวรับฟังนั้น --request ให้โทเค็นวิธี; --request-target ให้สิทธิ์ CONNECT การแยกทั้งสองไว้ออกจากกันจะสร้าง CONNECT service.example:443 HTTP/1.1

ตัวเลือกพร็อกซีว่างป้องกันไม่ให้ curl ส่งการวินิจฉัยนี้ผ่านพร็อกซีอื่นที่สืบทอดมา คำสั่งจงใจละเว้น --fail เพื่อให้เอกสารข้อผิดพลาด HTTP ถูกเก็บไว้ได้

ความพยายามที่ไม่มีการพิสูจน์ตัวตนอาจหยุดที่ 407 ก่อนจะถึงความล้มเหลวที่กำลังตรวจสอบ ใช้การจัดพิสูจน์ตัวตนที่พร็อกซีตั้งใจไว้เมื่อสร้างคำขอที่พิสูจน์ตัวตนแล้วขึ้นใหม่

นี่มีไว้เพื่อตรวจสอบการตอบกลับที่ล้มเหลว หากพร็อกซีส่ง 2xx กลับมา การเชื่อมต่อจะกลายเป็นอุโมงค์แทนการถ่ายโอนเนื้อความ HTTP ปกติ การวินิจฉัยด้วยวิธีกำหนดเองนี้ไม่เริ่มการแลกเปลี่ยน TLS ของปลายทาง และอาจถึงขีดจำกัดเวลาบนอุโมงค์เปิดที่ได้รับการยอมรับ

ใช้ลำดับคำขอ --proxy ปกติสำหรับการดึง HTTPS จริง เก็บสถานะและเนื้อความของการวินิจฉัยไว้กับพร็อกซีและเป้าหมายเฉพาะของมัน

บทความที่เกี่ยวข้อง