Ha egy curl-teszt HTTP-állapotként 000 értéket ír ki, akkor nem kapott jelenthető végleges HTTP-válaszkódot. A webhely nem küldött 000 nevű valódi HTTP-állapotot.

A hibát is rögzítsd

Ez a POSIX-parancsértelmezőhöz készült példa kiírja a végleges HTTP-mezőt, a CONNECT-mezőt és a curl-folyamat kilépési kódját:

curl --proxy http://203.0.113.10:8080 --noproxy '' --connect-timeout 5 --max-time 15 --silent --show-error --output /dev/null --write-out 'http=%{http_code} connect=%{http_connect}\n' https://example.com/
result=$?
printf 'curl_exit=%s\n' "$result"

Cseréld le a példában szereplő végpontot a saját HTTP-proxydra vagy a HTTP-proxylistából választott címre. Hagyd bekapcsolva a show-error beállítást: gyakran a hibaüzenet a leghasznosabb rész. A CONNECT-mező alagút használatakor releváns; nem a webhely második végleges állapota.

Együtt olvasd az értékeket

  • Ha nem sikerül kapcsolódni a proxyhoz, a HTTP-mező 000 maradhat.
  • A válasz megérkezése előtti időtúllépés ugyanezt okozhatja.
  • Sikeres CONNECT-válasz után bekövetkező TLS-hiba esetén connect=200 és http=000 jelenhet meg.
  • A webhely teljes válasza, például a 403, más helyzet: van tényleges HTTP-válasz, amelyet meg lehet vizsgálni.

A pontos kilépési kód és az üzenet szűkíti a lehetséges okokat. Nézd meg, hogy a hiba a proxy megkeresésekor, a portjához kapcsolódáskor, az alagút egyeztetésekor vagy a cél ellenőrzésekor történt-e.

Ne szűkíts minden eredményt puszta állapotellenőrzésre

Az a szkript, amely csak a http_code értékét menti, eldobja az átviteli hibát. Mentsd el a folyamat eredményét és egy érzékeny adatoktól megtisztított hibaüzenetet is. Fordítva is igaz: a curl sikeresen befejezhet egy átvitelt akkor is, ha a webhely hibás állapotot küld, hacsak nem használsz megfelelő fail kapcsolót. A HTTP-válasz és a kliens végrehajtási eredménye eltérő kérdésekre válaszol.

Ne a TLS-ellenőrzés kikapcsolásával vagy egy véletlenszerű fejléc hozzáadásával próbáld javítani a 000 értéket. Először állapítsd meg, melyik művelet nem jutott el végleges válaszig.

Kapcsolódó cikkek