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 ကို မပြင်ပါနဲ့။ ဘယ်လုပ်ဆောင်ချက်က နောက်ဆုံးတုံ့ပြန်ချက်အထိ မရောက်ခဲ့သလဲ အရင်ဆုံး ခွဲခြားပါ။

ဆက်စပ်ဆောင်းပါးများ