ප්රොක්සියක් සමඟ ERR_TUNNEL_CONNECTION_FAILED දෝෂය විසඳීම
Updated:
ප්රොක්සියක් හරහා https:// පිටුවක් පැටවීමට, බ්රව්සරය CONNECT ඉල්ලීමක් යවා ප්රොක්සිය අඩවිය වෙත ටනලයක් විවෘත කරන තෙක් රැඳී සිටියි. ප්රොක්සිය එකඟ වීම වෙනුවට දෝෂයකින් පිළිතුරු දුන් විට ERR_TUNNEL_CONNECTION_FAILED දිස්වේ. මෙහි ඇති ගැටලුව නම් Chrome විසින් එම දෝෂය කුමක්දැයි නොපැවසීමයි, එබැවින් පළමු කාර්යය වන්නේ නියම කේතය සොයා ගැනීමයි.
අප විසින් ප්රතිනිර්මාණය කරන ලද අවස්ථා දෙක
මේවා පරීක්ෂණ ප්රොක්සියක් මඟින් ක්රියාත්මක කළ අතර, මෙහි ලේඛනගත ලිපිනය 203.0.113.10:8080 සහ user123:pass456 ලෙස යොදා ඇත. සාමාන්ය Chrome කවුළුවකදී 407 අවස්ථාව ටනල් දෝෂයක් බවට පත් නොවේ; ඒ වෙනුවට Chrome ප්රොක්සි පරිශීලක නාමය සහ මුරපදය සඳහා පුරනය වීමේ කවුළුවක් විවෘත කරයි. එබැවින් 407 මඟින් ඇතිවන ටනල් දෝෂ බොහෝ විට දැකිය හැක්කේ ස්වයංක්රීයකරණ මෙවලම්වල සහ මුරපදයක් ඉල්ලා සිටිය නොහැකි යෙදුම්වල පමණි.
| ප්රොක්සිය CONNECT සඳහා දෙන පිළිතුර | Chrome පෙන්වන දෙය | curl පෙන්වන දෙය |
|---|---|---|
මුරපදයක් ඇතුළත් කිරීමට ක්රමයක් නොමැති 407 (headless Chrome) | ERR_TUNNEL_CONNECTION_FAILED | curl: (56) CONNECT tunnel failed, response 407 |
ප්රොක්සියට අඩවිය වෙත ළඟා විය නොහැකි නිසා ලැබෙන 502 | ERR_TUNNEL_CONNECTION_FAILED | curl: (56) CONNECT tunnel failed, response 502 |
හේතු, බොහෝ දුරට ඉඩ ඇති අනුපිළිවෙලින්
- ස්වයංක්රීයකරණ ස්ක්රිප්ටයක් මඟින් අක්තපත්ර නොයැවීම. Chrome හි
--proxy-serverධජය පිළිගන්නේ host සහ port පමණි, user:pass නොවේ. Headless Puppeteer හෝ Selenium වෙත 407 ලැබී ටනල් අසාර්ථකත්වයක් වාර්තා කරයි. - මුරපදයකින් ආරක්ෂිත Wi-Fi ප්රොක්සියක් පිටුපස ඇති දුරකථන යෙදුමක්. යෙදුමට පුරනය වීමේ කවුළුවක් නොමැති බැවින්, බ්රව්සරය ක්රියා කරන අතරතුර HTTPS බිඳ වැටේ.
- ප්රොක්සියට ඉලක්කය වෙත ළඟා විය නොහැක. එය CONNECT සඳහා 502 ලබා දෙයි; 502 Bad Gateway පිටුව මඟින් මේ පිළිබඳව සවිස්තරාත්මකව ආවරණය කරයි.
- සමහර අඩවි පමණක් අසාර්ථක වීම. එම ප්රොක්සිය හරහා අනෙකුත් අඩවි ක්රියා කරන අතරතුර අදාළ ඉලක්ක අඩවිය අවහිර කර හෝ අක්රියව පවතී.
තනි curl විධානයකින් නියම කේතය සොයා ගන්න
ඔබගේම අගයන් යොදා curl -v -x http://user123:[email protected]:8080 https://example.com ධාවනය කරන්න. > CONNECT example.com:443 HTTP/1.1 ට පසු කෙළින්ම ඇති පේළිය බලන්න: 407 යනු 407 මාර්ගෝපදේශය අනුගමනය කළ යුතු බවයි; 502 මඟින් ඉලක්කය හෝ ප්රොක්සිය පිටුපස ඇති මාර්ගය පෙන්වයි. ඔබට ටර්මිනලයක් භාවිතා කිරීමට අවශ්ය නැතිනම්, එම පේළිය proxy checker වෙත අලවන්න, එය එම තත්ත්වයන් සඳහා auth failed (407) හෝ HTTP 502 වාර්තා කරයි.
පරිසරය අනුව විසඳුම්
- Puppeteer: ආරම්භයේදී
--proxy-server=http://host:portතබා ගෙන navigate කිරීමට පෙරpage.authenticate({ username, password })අමතන්න. සම්පූර්ණ උදාහරණය Puppeteer ප්රොක්සි මාර්ගෝපදේශයෙහි ඇත. - Playwright: බ්රව්සරය දියත් කිරීමේදී
proxy: { server, username, password }ලබා දෙන්න, එවිට Playwright ඔබ වෙනුවෙන් 407 සඳහා පිළිතුරු සපයයි; Playwright බලන්න. - Selenium: Chrome විධාන රේඛාවේ user:pass නොගනී; Selenium මාර්ගෝපදේශය මඟින් කළ හැකි විකල්ප පෙන්වයි.
- Windows හි Chrome: පුරනය වීමේ කවුළුව කිසිසේත් නොපෙනේ නම්, ප්රොක්සි දිගුවක් මඟින් එය වළක්වන්නේ දැයි පරීක්ෂා කර, පසුව දිගු නොමැති කවුළුවක නැවත උත්සාහ කරන්න.
- දුරකථන: සත්යාපිත ප්රොක්සියක් අවශ්ය යෙදුම් සඳහා, Android සැකසුම් මාර්ගෝපදේශයෙහි පරිදි user:pass සහාය දක්වන ප්රොක්සි යෙදුමක් භාවිතා කරන්න.
පියවරෙන් පියවර
- 1
CONNECT ප්රතිචාරය හඳුනා ගන්න
ප්රොක්සිය 407 හෝ 502 ආපසු ලබා දෙන්නේ දැයි දැන ගැනීමට ඔබේ ප්රොක්සි පේළිය සමඟ
curl -v -xධාවනය කරන්න, නැතහොත් එය checker වෙත අලවන්න. - 2
407 සඳහා: අක්තපත්ර නිවැරදිව ලබා දෙන්න
ස්ක්රිප්ට් වලදී,
--proxy-serverතුළ user:pass යෙදීම වෙනුවට අදාළ පුස්තකාලයේ සත්යාපන hook භාවිතා කරන්න. - 3
502 සඳහා: වෙනත් අඩවියක් උත්සාහ කරන්න
එම ප්රොක්සිය හරහා example.com වැනි විශාල අඩවියක් පූරණය කරන්න. එය ක්රියා කරන්නේ නම්, ගැටලුව ඇත්තේ මුල් ඉලක්කයේ ය.
- 4
නැවත ධාවනය කර පිටවීමේ IP තහවුරු කරන්න
ටනලය විවෘත වූ පසු, ගමනාගමනය ප්රොක්සිය හරහා සිදුවන බව තහවුරු කිරීමට එම බ්රව්සරයෙන්ම my IP වෙත පිවිසෙන්න.
නිතර අසන ප්රශ්න
https පිටු අසාර්ථක වන විට http පිටු පූරණය වන්නේ ඇයි?
සාමාන්ය http සඳහා CONNECT අවශ්ය නොවේ; ප්රොක්සිය ඉල්ලීම සෘජුවම ඉදිරියට යවයි. ටනලයක් විවෘත වන්නේ https සඳහා පමණක් බැවින්, ටනල් දෝෂ දිස්වන්නේ එහිදී පමණි.
Android හි ERR_TUNNEL_CONNECTION_FAILED ඇතිවීමට හේතුව කුමක්ද?
බොහෝ විට Wi-Fi ප්රොක්සියකට පරිශීලක නාමය සහ මුරපදය ලබා දිය නොහැකි යෙදුමකි. Android සඳහා Chrome හි එම පිටුවම උත්සාහ කරන්න; Chrome හට විමසුම පෙන්වා එය පූරණය කළ හැකි නම්, ගැටලුව ඇත්තේ යෙදුම තුළය.
මට --proxy-server තුළට user:pass ඇතුළත් කළ හැකිද?
නැත. Chrome එම ධජයේ ඇති අක්තපත්ර නොසලකා හරින අතර, එය 407 සහ ටනල් දෝෂයට මඟ පාදයි. ඒ වෙනුවට Puppeteer, Playwright හෝ දිගුවක් හරහා සත්යාපනය කරන්න.
SOCKS5 වෙත මාරු වීමෙන් ටනල් දෝෂය ඉවත් වේද?
ඔබේ ඇණවුම SOCKS5 නම් පමණි. VinaProxy විසින් HTTP(S) සහ SOCKS5 යන දෙකම පිරිනමයි; නොගැලපීමක් වෙනත් දෝෂ ඇති කරන බැවින්, උපකරණ පුවරුවේ ඔබේ ඇණවුම පෙන්වන ප්රොටෝකෝලය තෝරන්න.
Puppeteer සහ Playwright සමඟ ක්රියා කරන ප්රොක්සි
VinaProxy ප්රොක්සි සම්මත user:pass පිවිසුම භාවිතා කරන අතර ජනප්රිය ස්වයංක්රීයකරණ පුස්තකාලවලට එය සෘජුවම හැසිරවිය හැක.
මිල ගණන් බලන්න