curl مۇۋەپپەقىيەت قازانغاندىن كېيىن shell proxy تەكشۈرۈشى نېمىشقا مەغلۇب بولۇپ قالىدۇ
كېيىنكى proxy تەكشۈرۈشلىرى مۇۋەپپەقىيەت قازانغاندىن كېيىن shell ئۆزگەرگۈچىسىدە كونا curl مەغلۇبىيىتىنى ساقلىماسلىق كېرەك.
proxy بىر قېتىم مەغلۇب بولىدۇ. كېيىنكى تەلەپلەر مۇۋەپپەقىيەت قازىنىدۇ، ئەمما كۆزەتكۈچ يەنە بىر مەغلۇبىيەتنى ئېلان قىلىشنى داۋاملاشتۇرىدۇ. script تۈنۈگۈنكى چىقىش ھالىتىنى ئېسىدە ساقلىغان-ساقلىمىغانلىقىنى تەكشۈرۈڭ.
بۇ ئەندىزە ئۆزگەرگۈچىنى پەقەت curl مەغلۇب بولغاندىلا يېڭىلايدۇ:
status=0
# Repeated inside a loop:
curl ... || status=$?
تۇنجى نۆلدىن باشقا نەتىجىدىن كېيىن، مۇۋەپپەقىيەتلىك تەكرارلاش status نى تەگمەي قالدۇرىدۇ. پەقەت curl مۇۋەپپەقىيەت قازانغانلىقى ئۈچۈنلا ئۇ نۆلگە ئايلانمايدۇ.
ئۇنىڭ ئورنىغا نۆۋەتتىكى بۇيرۇق بويىچە تارماقلىنىڭ:
if curl --proxy socks5h://127.0.0.1:1080 --noproxy '' \
--fail --silent --show-error --connect-timeout 3 --max-time 10 \
https://health.example/ >/dev/null; then
echo "check succeeded"
else
echo "check failed"
fi
ئادرېس ۋە ۋاقىتلار مىسال. بۇ كونا ئۆزگەرگۈچىنى چىقىرىۋېتىدۇ؛ قايسى ئەسلىگە كەلتۈرۈش ھەرىكىتى مۇۋاپىق ئىكەنلىكىنى ھۆكۈم قىلمايدۇ.
كۆزىتىشنى تار ساقلاڭ. تەلەپ proxy، كېيىنكى يول، نىشان، TLS دەلىللەش ۋە HTTP نەتىجىسىگە باغلىق. SOCKS مۇلازىمىتى ساغلام تۇرغاندا نىشاندىكى ئۈزۈلۈش ئۇنى مەغلۇب قىلىشى مۇمكىن. كۈتۈلمىگەن HTTP 200 بېتىمۇ كۈتۈلگەن مەزمۇننى بەرمەي پەقەت ھالەتكە ئاساسلانغان تەكشۈرۈشتىن ئۆتەلەيدۇ.
كونترول قىلىنغان جاۋاب كېلىشىمىنى تاللاڭ ۋە مەغلۇبىيەت باسقۇچىنى ساقلاڭ. ھەر بىر نۆلدىن باشقا curl نەتىجىسىدە proxy نى قايتا قوزغىتىش ساغلام سېشنلارنى بۇزۇشى مۇمكىن، ئەمما ھەقىقىي نىشان مەسىلىسى تەگمەي قالىدۇ.