Paano ayusin ang 407 Proxy Authentication Required
Updated:
Mas magandang balita ang 407 kaysa sa inaakala: narating ng iyong device ang proxy at bukas ang network path. Sinasabi lang ng proxy na hindi ito nakatanggap ng wastong username at password. Iyon ang dahilan kung bakit halos bawat 407 ay nareresolba sa bahagi ng mga kredensyal, hindi sa iyong router o firewall.
Mga sanhi ng 407, una ang pinakamalamang
- Mali o nawawalang username/password. Isang maling na-type na character, o sobrang space sa dulo na nakopya kasama ng password. Ito ang nagpapaliwanag sa karamihan ng mga ulat ng 407.
- Na-paste ang mga field sa maling kahon. Napupunta ang buong linyang
ip:port:user:passsa Host box, o napupunta ang username sa password box. Hinihiwalay ng ilang tool ang apat na field para sa iyo, ang iba naman ay hindi. - Hindi kailanman nagpapadala ng mga kredensyal ang app. Address at port lamang ang iniimbak ng proxy setting ng operating system. Ang mga app na hindi makapag-prompt para sa password ay kumokonekta nang walang auth header at nakakatanggap ng 407.
- Mga espesyal na character sa loob ng proxy URL. Sa anyong
http://user:pass@host:port, ang mga character tulad ng@,:, o#sa password ay dapat naka-percent-encode (ang@ay nagiging%40), kung hindi ay mapuputol ang string sa maling bahagi.
Ano ang aktwal na itsura ng 407
Ginawa namin ulit ang error sa isang test proxy, na ipinapakita rito gamit ang documentation address na 203.0.113.10:8080 at sadyang maling user123:pass456. Sa isang HTTPS site, ang curl -x http://user123:[email protected]:8080 https://example.com ay naglalabas ng curl: (56) CONNECT tunnel failed, response 407. Sa isang simpleng HTTP site na may -w %{http_code}, 407 lang ang ipinapakita ng curl.
Magdagdag ng -v upang makita kung naipadala ba talaga ang mga kredensyal. Ipinapakita sa trace ang > CONNECT example.com:443 HTTP/1.1, pagkatapos ay > Proxy-Authorization: Basic ..., at saka pa lang ang 407. Kung wala ang linyang Proxy-Authorization, hindi kailanman naipadala ng iyong client ang login.
Iniuulat ng proxy checker ng VinaProxy ang parehong sitwasyon bilang auth failed (407). Ang Headless Chrome, na walang login dialog, ay nagpapakita nito bilang ERR_TUNNEL_CONNECTION_FAILED; tingnan ang tunnel error page.
Mga solusyon ayon sa environment
- Windows at Chrome: Sinusunod ng Chrome ang proxy setting ng Windows (Settings > Network & Internet > Proxy), na naglalaman lamang ng address at port. Sa unang pag-load ng page, nagbubukas ang Chrome ng sign-in dialog para sa proxy username at password. Kung mali ang na-type mo at hindi na muling lumalabas ang dialog, isara ang lahat ng window ng Chrome at muling buksan.
- Mga antidetect browser (AdsPower, GoLogin, GenLogin): panatilihing nasa magkakahiwalay na field ang Host, Port, Username, at Password. Burahin nang buo ang password field at i-paste ito muli sa halip na i-edit. Ang tulong para sa bawat field ay nasa GoLogin setup guide.
- Mga telepono: May Authentication switch ang iPhone sa ilalim ng Settings > Wi-Fi > (i) > Configure Proxy; nagdudulot ng 407 kapag iniwan itong naka-off. Karaniwan namang host at port lang ang tinatanggap ng Android, kaya maaaring generic na connection error ang ipakita ng mga app na nangangailangan ng login.
- curl: ipasa nang hiwalay ang
-U "user:pass"sa halip na isama ito sa URL, na umiiwas sa mga problema sa mga espesyal na character. - Python requests: itakda ang
http://user:pass@host:portpara sa parehonghttpathttpskey ngproxiesdict, at i-encode ang mga mahihirap na password gamit angurllib.parse.quote.
Tama ang mga kredensyal ngunit nananatili ang 407
Paghambingin ang mga protocol susunod. Nagbebenta ang VinaProxy ng mga HTTP(S) proxy na may user:pass login at mayroon ding SOCKS5, kaya piliin ang protocol na ipinapakita sa iyong order sa dashboard. Kung sumagot ang checker ng not socks5, HTTP ang ginagamit ng port na iyon at hindi dapat i-configure bilang SOCKS5.
Sunod-sunod na hakbang
- 1
Kopyahin ang linya ng proxy mula sa dashboard
Buksan ang order sa iyong VinaProxy dashboard at kopyahin ang buong linya sa halip na i-type ito.
- 2
Subukan ito sa proxy checker
I-paste ito sa proxy checker. Kinukumpirma ng resultang
auth failed (407)na problema ito sa mga kredensyal sa halip na sa network. - 3
Muling ilagay ang username at password nang maayos
Burahin ang parehong field sa iyong software at i-paste muli ang mga ito nang walang mga space sa unahan o hulihan.
- 4
Itugma ang protocol sa order
Itakda ang uri ng proxy sa HTTP o SOCKS5 nang eksakto ayon sa nakasaad sa order, pagkatapos ay i-save.
- 5
I-trace gamit ang curl -v kung magpapatuloy
Patakbuhin ang
curl -vgamit ang iyong mga totoong value at tingnan kung may linyangProxy-Authorizationbago ang 407.
Mga madalas itanong
Sanhi ba ng pag-block ng aking ISP sa proxy ang 407?
Hindi. Ang proxy mismo ang nagpapadala ng 407, kaya nakalusot ang koneksyon. Lumalabas ang isang naka-block na path bilang timeout o refused connection; tingnan ang proxy timeout.
Bakit paulit-ulit na humihingi ang Chrome ng proxy login?
Bawat maling entry ay nakakatanggap ng panibagong 407 at muling magtatanong ang Chrome. Tingnan ang Caps Lock at tiyaking hindi nagdaragdag ng mga accent sa password ang Vietnamese o iba pang input method.
Paano ako maglalagay ng password na may @ sa isang proxy URL?
I-encode ito: ang @ bilang %40, : bilang %3A, # bilang %23. Sa curl, ganap na iniiwasan ng -U flag ang pag-encode.
Tunnel error ang ipinapakita ng Selenium o Puppeteer sa halip na 407. Parehong problema ba ito?
Karaniwang oo. Hindi makapagpakita ng login dialog ang Headless Chrome, kaya lumalabas ang 407 bilang ERR_TUNNEL_CONNECTION_FAILED. Magbigay ng mga kredensyal sa pamamagitan ng auth mechanism ng library, tulad ng nasa Selenium guide.
Mga pribadong proxy na may malilinaw na kredensyal
Bawat order sa VinaProxy ay nagbibigay sa iyo ng handang linyang ip:port:user:pass upang kopyahin nang minsan at i-paste kahit saan.
Tingnan ang presyo ng proxy