Si të zgjidhni gabimin 407 Proxy Authentication Required
Updated:
Një gabim 407 është një lajm më i mirë nga sa duket: pajisja juaj u lidh me proxy-n dhe rruga e rrjetit është e hapur. Proxy thjesht po njofton se nuk ka marrë një emër përdoruesi dhe fjalëkalim të vlefshëm. Kjo është arsyeja pse pothuajse çdo gabim 407 zgjidhet te kredencialet, jo te ruteri apo muri mbrojtës (firewall).
Shkaqet e një gabimi 407, duke filluar nga më të mundshmit
- Emër përdoruesi ose fjalëkalim i pasaktë ose që mungon. Një karakter i shtypur gabim, ose një hapësirë shtesë e kopjuar bashkë me fjalëkalimin. Kjo shpjegon shumicën e rasteve me gabimin 407.
- Fushat janë ngjitur në kutitë e gabuara. E gjithë linja
ip:port:user:passpërfundon në kutinë Host, ose emri i përdoruesit shkon te kutia e fjalëkalimit. Disa mjete i ndajnë automatikisht të katër fushat, por të tjerat jo. - Aplikacioni nuk dërgon kurrë kredencialet. Cilësimi i proxy-t në nivel sistemi operativ ruan vetëm adresën dhe portën. Aplikacionet që nuk mund të kërkojnë një fjalëkalim lidhen pa një titull autentikimi (auth header) dhe marrin mbrapsht një gabim 407.
- Karaktere speciale brenda URL-së së proxy-t. Në formatin
http://user:pass@host:port, karakteret si@,:ose#në fjalëkalim duhet të kodohen me përqindje (@bëhet%40), përndryshe vargu ndahet në vendin e gabuar.
Si duket në të vërtetë një gabim 407
Ne e riprodhuam gabimin në një proxy testues, të paraqitur këtu me adresën e dokumentacionit 203.0.113.10:8080 dhe me kredenciale qëllimisht të gabuara user123:pass456. Përballë një faqeje HTTPS, curl -x http://user123:[email protected]:8080 https://example.com shfaq curl: (56) CONNECT tunnel failed, response 407. Përballë një faqeje të thjeshtë HTTP me -w %{http_code}, curl shfaq thjesht 407.
Shtoni -v për të parë nëse kredencialet janë dërguar fare. Gjurmimi tregon > CONNECT example.com:443 HTTP/1.1, më pas > Proxy-Authorization: Basic ..., dhe vetëm atëherë gabimin 407. Nëse linja Proxy-Authorization mungon, klienti juaj nuk i ka dërguar kurrë të dhënat e hyrjes.
Vegla VinaProxy proxy checker raporton të njëjtin rast si auth failed (407). Headless Chrome, i cili nuk ka një dritare hyrjeje, e shfaq atë si ERR_TUNNEL_CONNECTION_FAILED; shihni faqen e gabimit të tunelit.
Zgjidhjet sipas mjedisit
- Windows dhe Chrome: Chrome ndjek cilësimin e proxy-t në Windows (Settings > Network & Internet > Proxy), i cili mban vetëm adresën dhe portën. Në ngarkimin e parë të faqes, Chrome hap një dritare hyrjeje për emrin e përdoruesit dhe fjalëkalimin e proxy-t. Nëse e keni shkruar gabim dhe dritarja nuk shfaqet më, mbyllni çdo dritare të Chrome dhe hapeni përsëri.
- Shfletuesit antidetektim (AdsPower, GoLogin, GenLogin): mbani Host, Port, Username dhe Password në fusha të veçanta. Pastrojeni plotësisht fushën e fjalëkalimit dhe ngjiteni përsëri në vend që ta modifikoni. Ndihmën për çdo fushë e gjeni në udhëzuesin e konfigurimit të GoLogin.
- Telefonat: iPhone ka një opsion Authentication te Settings > Wi-Fi > (i) > Configure Proxy; lënia e tij e çaktivizuar sjell gabimin 407. Android zakonisht pranon vetëm host dhe portë, kështu që aplikacionet që kërkojnë hyrje mund të shfaqin në vend të kësaj një gabim të përgjithshëm lidhjeje.
- curl: kaloni
-U "user:pass"veçmas në vend që ta integroni në URL, gjë që shmang problemet me karakteret speciale. - Python requests: vendosni
http://user:pass@host:portsi për çelësinhttpashtu edhe përhttpsnë fjalorinproxies, dhe kodoni fjalëkalimet problematike meurllib.parse.quote.
Kredencialet janë të sakta, por gabimi 407 vazhdon
Më pas krahasoni protokollet. VinaProxy shet proxy HTTP(S) me hyrje user:pass si dhe SOCKS5, prandaj zgjidhni protokollin e shfaqur te porosia juaj në panelin e kontrollit. Nëse kontrolluesi përgjigjet me not socks5, ajo portë përdor HTTP dhe nuk duhet të konfigurohet si SOCKS5.
Hap pas hapi
- 1
Kopjoni linjën e proxy-t nga paneli i kontrollit
Hapni porosinë në panelin tuaj të VinaProxy dhe kopjoni të gjithë linjën në vend që ta shkruani me dorë.
- 2
Kontrollojeni me anë të verifikuesit të proxy-t
Ngjiteni te proxy checker. Rezultati
auth failed (407)konfirmon një problem me kredencialet dhe jo me rrjetin. - 3
Rishkruani saktë emrin e përdoruesit dhe fjalëkalimin
Pastrojini të dyja fushat në programin tuaj dhe ngjitini përsëri pa hapësira përpara ose prapa.
- 4
Përshtatni protokollin me porosinë
Caktoni llojin e proxy-t në HTTP ose SOCKS5 saktësisht siç specifikohet në porosi, pastaj ruajeni.
- 5
Gjurmoni me curl -v nëse problemi vazhdon
Ekzekutoni
curl -vme vlerat tuaja reale dhe kontrolloni për një linjëProxy-Authorizationpërpara gabimit 407.
Pyetjet e shpeshta
A shkaktohet gabimi 407 nga bllokimi i proxy-t prej ISP-së sime?
Jo. Gabimi 407 dërgohet nga vetë proxy, gjë që tregon se lidhja u realizua. Një rrugë e bllokuar shfaqet si skadim kohe (timeout) ose lidhje e refuzuar; shihni proxy timeout.
Pse Chrome vazhdon të kërkojë të dhënat e hyrjes së proxy-t?
Çdo hyrje e pasaktë merr një tjetër gabim 407 dhe Chrome kërkon sërish të dhënat. Kontrolloni Caps Lock dhe sigurohuni që metoda e futjes në gjuhën vietnameze ose një gjuhë tjetër të mos shtojë thekse në fjalëkalim.
Si të vendos një fjalëkalim që përmban @ në një URL proxy?
Kodojeni atë: @ si %40, : si %3A, # si %23. Me curl, parametri -U e shmang plotësisht kodimin.
Selenium ose Puppeteer shfaq një gabim tuneli në vend të 407. A është i njëjti problem?
Zakonisht po. Headless Chrome nuk mund të shfaqë një dritare hyrjeje, prandaj gabimi 407 shfaqet si ERR_TUNNEL_CONNECTION_FAILED. Jepni kredencialet përmes mekanizmit të autentikimit të bibliotekës, si te udhëzuesi i Selenium.
Proxy privatë me kredenciale të qarta
Çdo porosi në VinaProxy ju jep një linjë të gatshme ip:port:user:pass për ta kopjuar një herë dhe ngjitur kudo.
Shihni çmimet e proxy-ve