VVinaProxy

Rješavanje greške ERR_TUNNEL_CONNECTION_FAILED uz proxy

Updated:

Da bi učitao https:// stranicu putem proxyja, preglednik šalje CONNECT zahtjev i čeka da proxy otvori tunel prema stranici. ERR_TUNNEL_CONNECTION_FAILED se pojavljuje kada proxy na taj zahtjev odgovori greškom umjesto odobrenjem. Problem je u tome što Chrome ne navodi o kojoj se grešci radi, pa je prvi zadatak otkriti stvarni kod.

Proxyji koji rade s Puppeteerom i Playwrightom

Dva slučaja koja smo reprodukovali

Oba slučaja su testirana na testnom proxyju, koji je ovdje naveden s dokumentacijskom adresom 203.0.113.10:8080 i user123:pass456. U standardnom Chrome prozoru slučaj 407 se ne pretvara u grešku tunela; Chrome umjesto toga otvara prozor za prijavu s korisničkim imenom i lozinkom za proxy. Greške tunela uzrokovane kodom 407 se stoga uglavnom javljaju u alatima za automatizaciju i u aplikacijama koje ne mogu zatražiti unos lozinke.

Proxy na CONNECT odgovara saChrome prikazujecurl prikazuje
407 bez mogućnosti unosa lozinke (headless Chrome)ERR_TUNNEL_CONNECTION_FAILEDcurl: (56) CONNECT tunnel failed, response 407
502 jer proxy ne može doći do straniceERR_TUNNEL_CONNECTION_FAILEDcurl: (56) CONNECT tunnel failed, response 502

Uzroci, od najvjerovatnijih

  • Skripta za automatizaciju ne šalje pristupne podatke. Chromeova zastavica --proxy-server prihvata samo host i port, a ne user:pass. Headless Puppeteer ili Selenium dobijaju 407 i prijavljuju neuspjeh tunela.
  • Aplikacija na telefonu iza Wi-Fi proxyja zaštićenog lozinkom. Aplikacija nema dijalog za prijavu, pa HTTPS ne radi dok preglednik i dalje funkcioniše.
  • Proxy ne može doći do cilja. Vraća 502 na CONNECT; 502 Bad Gateway stranica ovo detaljno obrađuje.
  • Samo pojedine stranice ne rade. Ciljna stranica blokira pristup ili je nedostupna, dok druge stranice rade preko istog proxyja.

Otkrijte stvarni kod pomoću jedne curl komande

Pokrenite curl -v -x http://user123:[email protected]:8080 https://example.com sa svojim vrijednostima. Pogledajte liniju odmah iza > CONNECT example.com:443 HTTP/1.1: 407 znači da trebate pratiti vodič za 407; 502 ukazuje na odredište ili putanju iza proxyja. Ako radije ne koristite terminal, zalijepite liniju u provjeravač proxyja, koji za iste situacije prijavljuje auth failed (407) ili HTTP 502.

Rješenja po okruženjima

  • Puppeteer: zadržite --proxy-server=http://host:port pri pokretanju i pozovite page.authenticate({ username, password }) prije navigacije. Kompletan primjer nalazi se u vodiču za Puppeteer proxy.
  • Playwright: proslijedite proxy: { server, username, password } prilikom pokretanja preglednika i Playwright će odgovoriti na 407 umjesto vas; pogledajte Playwright.
  • Selenium: Chrome ne prihvata user:pass u komandnoj liniji; vodič za Selenium prikazuje izvodljive opcije.
  • Chrome na Windows-u: ako se dijalog za prijavu uopšte ne pojavi, provjerite blokira li ga neka proxy ekstenzija, a zatim pokušajte ponovo u prozoru bez ekstenzija.
  • Telefoni: za aplikacije kojima je potreban autentificirani proxy, koristite proxy aplikaciju koja podržava user:pass kao što je opisano u vodiču za postavljanje na Androidu.

Korak po korak

  1. 1

    Identifikujte CONNECT odgovor

    Pokrenite curl -v -x sa svojom linijom proxyja ili je zalijepite u provjeravač kako biste saznali vraća li proxy 407 ili 502.

  2. 2

    Za 407: ispravno unesite pristupne podatke

    U skriptama koristite autentifikacijski hook biblioteke umjesto stavljanja user:pass u --proxy-server.

  3. 3

    Za 502: isprobajte drugu stranicu

    Učitajte veliku stranicu kao što je example.com putem istog proxyja. Ako radi, problem je u prvobitnom odredištu.

  4. 4

    Ponovo pokrenite i potvrdite izlazni IP

    Nakon što se tunel otvori, posjetite moj IP u tom istom pregledniku kako biste potvrdili da promet ide preko proxyja.

Često postavljana pitanja

Zašto se http stranice učitavaju dok https stranice ne rade?

Obični http ne zahtijeva CONNECT; proxy direktno prosljeđuje zahtjev. Samo https otvara tunel, pa se greške tunela pojavljuju isključivo tu.

Šta uzrokuje ERR_TUNNEL_CONNECTION_FAILED na Androidu?

Najčešće aplikacija koja ne može proslijediti korisničko ime i lozinku na Wi-Fi proxy. Pokušajte otvoriti istu stranicu u Chromeu za Android; ako Chrome može zatražiti podatke i učitati stranicu, problem je u aplikaciji.

Mogu li staviti user:pass unutar --proxy-server?

Ne. Chrome ignoriše pristupne podatke u toj zastavici, što dovodi do koda 407 i greške tunela. Umjesto toga, izvršite autentifikaciju putem Puppeteera, Playwrighta ili ekstenzije.

Hoće li prelazak na SOCKS5 ukloniti grešku tunela?

Samo ako vaša narudžba glasi na SOCKS5. VinaProxy nudi i HTTP(S) i SOCKS5; odaberite protokol koji je naveden za vašu narudžbu na kontrolnoj tabli, jer nepodudaranje uzrokuje drugačije greške.

Proxyji koji rade s Puppeteerom i Playwrightom

VinaProxy proxyji koriste standardnu user:pass prijavu koju popularne biblioteke za automatizaciju podržavaju bez dodatnih podešavanja.

Pogledajte cijene

Related articles

Proxy greške
Kako riješiti 407 Proxy Authentication Required
Greška 407 Proxy Authentication Required znači da je proksi odgovorio, ali je odbio prijavu. Pogledajte stvarni curl izlaz, uzroke i rješenja po aplikaciji.
Proxy greške
502 Bad Gateway greške proxyja: saznajte ko ih šalje
502 Bad Gateway preko proxyja znači da posrednički server nije dobio valjan odgovor. Saznajte je li kriv proxy ili web stranica, uz stvarne curl primjere.
Podešavanje proxyja
Kako postaviti autentifikovani proxy u Puppeteeru (Node.js)
Konfigurišite autentifikovane HTTP(S) proxyje u Node.js Puppeteeru pomoću --proxy-server zastavice i await page.authenticate(). Kopirajte radne primjere.
Podešavanje proxyja
Kako postaviti proxy u Playwrightu (Browser i Per-Context autentifikacija)
Podesite autentifikovane HTTP(S) proxyje u Playwrightu za Node.js i Python i pokrenite više izolovanih statičkih IP-ova kroz BrowserContext. Kopirajte primjere.
Podešavanje proxyja
Kako podesiti proxy s autentifikacijom u Selenium WebDriveru
Konfigurišite HTTP(S) proxyje uz autentifikaciju u Selenium WebDriveru pomoću selenium-wire ili Chrome onAuthRequired ekstenzije. Pogledajte kôd.
Besplatni alati
Proxy Checker: Provjerite svoje proxyje online
Besplatni proxy checker: zalijepite do 100 proxyja kao ip:port:user:pass i provjerite status, izlazni IP i latenciju. Saznajte šta svaka greška znači.
Podešavanje proxyja
Kako konfigurisati proxy u Google Chromeu
Konfigurišite VinaProxy HTTP(S) proxyje u Google Chromeu bez promjene IP-a cijelog OS-a pomoću ekstenzija, --proxy-server flagova ili korisničkih profila.
Podešavanje proxyja
Kako konfigurisati proxy na Windows 10 i Windows 11
Konfigurišite VinaProxy HTTP(S) proxyje na Windows 10 i Windows 11 putem WinINET postavki sistema, PowerShell varijabli okruženja ili komande netsh winhttp.