Un proxy que rebutja CONNECT pot retornar un document d'error HTTP que explica la seva política o el fracàs de la connexió posterior. Per a un diagnòstic autoritzat contra un proxy HTTP ordinari, curl pot enviar aquesta sol·licitud directament i desar la resposta:

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/

L'URL final adreça l'escoltador del proxy. Per a una comparació permesa de proxys públics, la llista de proxys HTTP ofereix candidats per a aquest URL d'escoltador. --request proporciona el testimoni del mètode; --request-target proporciona l'autoritat CONNECT. Mantenir-los separats produeix CONNECT service.example:443 HTTP/1.1.

L'opció de proxy buida evita que curl encamini aquest diagnòstic a través d'un altre proxy heretat. L'ordre omet deliberadament --fail perquè es pugui conservar un document d'error HTTP.

Un intent no autenticat pot aturar-se a 407 abans d'arribar a la fallada que s'investiga. Utilitza la disposició d'autenticació prevista pel proxy quan reprodueixis una sol·licitud autenticada.

Això serveix per inspeccionar respostes de fallada. Si el proxy retorna 2xx, la connexió esdevé un túnel en lloc d'una transferència ordinària de cos HTTP. Aquest diagnòstic amb mètode personalitzat no inicia l'intercanvi TLS del destí i pot arribar al seu límit de temps en un túnel obert acceptat.

Utilitza el flux normal de sol·licituds --proxy per a una obtenció HTTPS real. Conserva l'estat i el cos del diagnòstic amb el seu proxy i destí específics.

Articles relacionats