የcurl ፈተና ለHTTP ሁኔታ 000 ሲያሳይ፣ ሊዘግበው የሚችል የመጨረሻ HTTP ምላሽ ኮድ አላገኘም ማለት ነው። ድረ ገጹ 000 የሚባል እውነተኛ HTTP ሁኔታ አልላከም።

ስህተቱንም ይመዝግቡ

ይህ ለPOSIX shell የተዘጋጀ ምሳሌ የመጨረሻውን 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ን ለማስተካከል አይሞክሩ። መጀመሪያ የትኛው ተግባር ወደ የመጨረሻ ምላሽ እንዳልደረሰ ይወስኑ።

ተዛማጅ ጽሑፎች