curl арқылы прокси тексергенде HTTP 000 нені білдіреді?
000 — сайт жіберген HTTP күйі емес. curl шығу коды мен қатесін көрсетілген HTTP өрісімен бірге оқыңыз.
curl тексеруі HTTP күйі ретінде 000 шығарса, ол хабарлауға болатын түпкілікті HTTP жауап кодын алмаған. Сайт 000 деген нақты HTTP күйін жіберген жоқ.
Қатені де тіркеңіз
POSIX қабықшасына арналған бұл мысал түпкілікті HTTP өрісін, CONNECT өрісін және curl процесінің шығу кодын басып шығарады:
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"
Мысалдағы қосылу нүктесін өз HTTP проксиіңізбен немесе HTTP прокси тізіміндегі үміткермен ауыстырыңыз. show-error қосулы болсын: қате хабары көбіне ең пайдалы бөлік. CONNECT өрісі туннель қолданылғанда маңызды; ол сайттың екінші түпкілікті күйі емес.
Мәндерді бірге оқыңыз
- Проксиге қосылу сәтсіз болса, HTTP өрісі 000 болып қалуы мүмкін.
- Жауап алынғанға дейін күту уақытының бітуі де сондай нәтиже беруі мүмкін.
- Сәтті CONNECT жауабынан кейін TLS қатесі болса, connect=200 және http=000 көрсетілуі мүмкін.
- Сайттың 403 сияқты толық жауабы — басқа жағдай: тексеруге болатын нақты HTTP жауабы бар.
Нақты шығу коды мен хабар себепті тарылтады. Қате проксиді іздегенде, оның портына қосылғанда, туннельді келіскенде әлде мақсатты тексергенде болғанын анықтаңыз.
Әр нәтижені тек күйді тексеруге айналдырмаңыз
Тек http_code сақтайтын скрипт тасымалдау қатесін жоғалтады. Процесс нәтижесін және құпия мәліметтерден тазартылған қате хабарын да сақтаңыз. Керісінше, тиісті fail параметрін қолданбасаңыз, сайт қате күйін қайтарғанның өзінде curl тасымалдауды сәтті аяқтауы мүмкін. HTTP жауабы мен клиенттің орындалу нәтижесі әртүрлі сұрақтарға жауап береді.
TLS тексеруін өшіру немесе кездейсоқ тақырып қосу арқылы 000 мәнін түзетуге тырыспаңыз. Алдымен қай әрекет түпкілікті жауапқа жетпегенін анықтаңыз.