Anstataŭigu 127.0.0.1:8080 per finpunkto de via servo aŭ el la listo de HTTP-prokuriloj kaj rulu ĉi tion kontraŭ sendanĝera HTTPS-celo:

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

La buklorevena adreso signifas aŭskultanton en via propra komputilo. La komando elektas ĝin eksplicite, malplenigas la preterpasan liston de curl por ĉi tiu alvoko kaj permesas kvin sekundojn por starigi la konekton kaj dek kvin sekundojn entute. Ĝi ne ŝanĝas la prokurilajn agordojn de la retumilo aŭ sistemo.

Uzu la veran plenumeblan curl-dosieron se via ŝelo faras curl alinomo de alia programo; curl --version identigas la kompilaĵon. Se la aŭskultanto mem postulas TLS, uzu ĝian dokumentitan prokurilan URL-skemon.

Legu kvar rezultojn, ne unu verdan lumon

  1. Konektite al la elektita prokurilo: la adreso kaj pordo estas atingeblaj.
  2. CONNECT akceptita: la prokurilo malfermis tunelon al la HTTPS-celo.
  3. Cela atestilo kontrolita: TLS finiĝis kun la atendataj fidkontroloj.
  4. Cela respondo ricevita: esploru ĝiajn staton kaj enhavon por la rezulto bezonata de via aplikaĵo.

Funkciantan tunelon povas sekvi cela respondo 403 aŭ 429. curl povas ankaŭ finiĝi sukcese post ricevo de HTTP-erara respondo, do registru kaj la respondan staton kaj la erarrezulton de curl. Nura TCP-konekto aŭ sukcesa CONNECT ne sufiĉas.

Kompakta rezulto por ripetaj komparoj

En Unikso-simila ŝelo, forĵetu la korpon kaj montru la tunelan staton, celan staton, konektan kunulon kaj pasintan tempon:

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 priskribas la tunelan respondon; http_code priskribas la finan HTTP-respondon. remote_ip estas la konekta kunulo de curl, ne sendependa mezuro de la elira adreso de la prokurilo. En aliaj sistemoj anstataŭigu /dev/null aŭ konservu la respondan korpon.

Se la testo malsukcesas, trovu la malsukcesintan konektstarigan aŭ transigan paŝon kaj komparu la saman celon rekte kie tiu vojo estas permesita:

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

--noproxy '*' preterpasas prokurilojn. Malsukceso de atestilkontrolo sur ambaŭ vojoj montras al komuna fidproblemo; rekta sukceso kune kun malakceptita CONNECT montras al prokurila aŭtentikigo aŭ politiko. Reviziu la detalan eliron antaŭ ol dividi ĝin, ĉar ĝi povas enhavi identigajn informojn.

Konservu la finpunkton, celon kaj tempindikon kun la rezulto. Tio konstatas, kio funkciis por tiu peto; estontaj disponeblo, privateco kaj rendimento sub ŝarĝo bezonas apartajn pruvojn.

Rilataj artikoloj