ວິທີແກ້ໄຂ 407 Proxy Authentication Required
Updated:
ຂໍ້ຜິດພາດ 407 ຖືເປັນຂ່າວດີກວ່າທີ່ຄິດ: ອຸປະກອນຂອງທ່ານສາມາດເຊື່ອມຕໍ່ຫາພຣັອກຊີໄດ້ ແລະ ເສັ້ນທາງເຄືອຂ່າຍເປີດປົກກະຕິ. ພຣັອກຊີພຽງແຕ່ແຈ້ງວ່າມັນບໍ່ໄດ້ຮັບຊື່ຜູ້ໃຊ້ ແລະ ລະຫັດຜ່ານທີ່ຖືກຕ້ອງ. ດັ່ງນັ້ນ ເກືອບທຸກກໍລະນີຂອງ 407 ແມ່ນແກ້ໄຂໄດ້ຢູ່ຝັ່ງຂໍ້ມູນເຂົ້າສູ່ລະບົບ, ບໍ່ແມ່ນຢູ່ຣາວເຕີ ຫຼື ໄຟວໍຂອງທ່ານ.
ສາເຫດຂອງ 407, ຈັດຕາມໂອກາດທີ່ເກີດຂຶ້ນຫຼາຍທີ່ສຸດ
- ຊື່ຜູ້ໃຊ້/ລະຫັດຜ່ານຜິດ ຫຼື ບໍ່ຄົບຖ້ວນ. ພິມໂຕອັກສອນຜິດພຽງໂຕດຽວ, ຫຼື ສຳເນົາຕິດຍະຫວ່າງທ້າຍລະຫັດຜ່ານມານຳ. ນີ້ຄືສາເຫດຂອງການລາຍງານ 407 ສ່ວນໃຫຍ່.
- ວາງຂໍ້ມູນໃສ່ຜິດຊ່ອງ. ວາງຂໍ້ຄວາມ
ip:port:user:passທັງໝົດລົງໃນຊ່ອງ Host, ຫຼື ຊື່ຜູ້ໃຊ້ໄປຢູ່ໃນຊ່ອງລະຫັດຜ່ານ. ເຄື່ອງມືບາງຢ່າງຈະແຍກສີ່ຊ່ອງນີ້ໃຫ້ທ່ານໂດຍອັດຕະໂນມັດ, ແຕ່ບາງເຄື່ອງມືກໍບໍ່ແຍກ. - ແອັບບໍ່ເຄີຍສົ່ງຂໍ້ມູນເຂົ້າສູ່ລະບົບ. ການຕັ້ງຄ່າພຣັອກຊີຂອງລະບົບປະຕິບັດການຈະບັນທຶກພຽງແຕ່ທີ່ຢູ່ ແລະ ພອດເທົ່ານັ້ນ. ແອັບທີ່ບໍ່ສາມາດຖາມຫາລະຫັດຜ່ານຈະເຊື່ອມຕໍ່ໂດຍບໍ່ມີ auth header ແລະ ໄດ້ຮັບລະຫັດ 407 ກັບຄືນມາ.
- ຕົວອັກສອນພິເສດພາຍໃນ URL ພຣັອກຊີ. ໃນຮູບແບບ
http://user:pass@host:port, ຕົວອັກສອນເຊັ່ນ@,:ຫຼື#ໃນລະຫັດຜ່ານຕ້ອງຖືກແປງເປັນ percent-encoded (@ຈະກາຍເປັນ%40), ບໍ່ດັ່ງນັ້ນຂໍ້ຄວາມຈະຖືກຕັດແບ່ງຜິດຕຳແໜ່ງ.
ລັກສະນະຕົວຈິງຂອງຂໍ້ຜິດພາດ 407
ພວກເຮົາໄດ້ຈຳລອງຂໍ້ຜິດພາດນີ້ໃນພຣັອກຊີທົດສອບ, ສະແດງຢູ່ບ່ອນນີ້ດ້ວຍທີ່ຢູ່ຕົວຢ່າງ 203.0.113.10:8080 ແລະ ຕັ້ງໃຈໃສ່ຂໍ້ມູນຜິດ user123:pass456. ເມື່ອທົດສອບກັບເວັບໄຊ HTTPS, ຄຳສັ່ງ curl -x http://user123:[email protected]:8080 https://example.com ຈະສະແດງ curl: (56) CONNECT tunnel failed, response 407. ເມື່ອທົດສອບກັບເວັບໄຊ HTTP ທຳມະດາພ້ອມດ້ວຍ -w %{http_code}, curl ຈະສະແດງພຽງແຕ່ 407.
ເພີ່ມ -v ເພື່ອເບິ່ງວ່າໄດ້ສົ່ງຂໍ້ມູນເຂົ້າສູ່ລະບົບຫຼືບໍ່. ລາຍລະອຽດຈະສະແດງ > CONNECT example.com:443 HTTP/1.1, ຈາກນັ້ນ > Proxy-Authorization: Basic ..., ແລ້ວຈຶ່ງຕາມດ້ວຍ 407. ຖ້າແຖວ Proxy-Authorization ຫາຍໄປ, ສະແດງວ່າໄຄລເອັນຂອງທ່ານບໍ່ເຄີຍສົ່ງຂໍ້ມູນເຂົ້າສູ່ລະບົບເລີຍ.
ເຄື່ອງມື proxy checker ຂອງ VinaProxy ຈະລາຍງານກໍລະນີດຽວກັນນີ້ເປັນ auth failed (407). ສ່ວນ Headless Chrome ທີ່ບໍ່ມີໜ້າຕ່າງເຂົ້າສູ່ລະບົບ ຈະສະແດງເປັນ ERR_TUNNEL_CONNECTION_FAILED; ເບິ່ງເພີ່ມເຕີມໄດ້ທີ່ tunnel error page.
ວິທີແກ້ໄຂຕາມແຕ່ລະສະພາບແວດລ້ອມ
- Windows ແລະ Chrome: Chrome ຈະອີງຕາມການຕັ້ງຄ່າພຣັອກຊີຂອງ Windows (Settings > Network & Internet > Proxy) ເຊິ່ງເກັບສະເພາະທີ່ຢູ່ ແລະ ພອດເທົ່ານັ້ນ. ເມື່ອໂຫຼດໜ້າເວັບຄັ້ງທຳອິດ Chrome ຈະເປີດໜ້າຕ່າງເຂົ້າສູ່ລະບົບສຳລັບຊື່ຜູ້ໃຊ້ ແລະ ລະຫັດຜ່ານຂອງພຣັອກຊີ. ຖ້າທ່ານພິມຜິດ ແລະ ໜ້າຕ່າງບໍ່ຂຶ້ນມາໃໝ່, ໃຫ້ປິດທຸກໜ້າຕ່າງຂອງ Chrome ແລ້ວເປີດຄືນໃໝ່.
- Antidetect browsers (AdsPower, GoLogin, GenLogin): ໃຫ້ແຍກ Host, Port, Username ແລະ Password ໄວ້ໃນຄົນລະຊ່ອງ. ລຶບຂໍ້ມູນໃນຊ່ອງລະຫັດຜ່ານອອກໃຫ້ໝົດແລ້ວວາງໃໝ່ ແທນທີ່ຈະແກ້ໄຂຂໍ້ຄວາມເດີມ. ເບິ່ງຄຳແນະນຳລະອຽດແຕ່ລະຊ່ອງໄດ້ໃນ GoLogin setup guide.
- ໂທລະສັບມືຖື: iPhone ມີປຸ່ມເປີດ-ປິດ Authentication ຢູ່ໃຕ້ Settings > Wi-Fi > (i) > Configure Proxy; ຖ້າປິດໄວ້ຈະເຮັດໃຫ້ເກີດຂໍ້ຜິດພາດ 407. ສ່ວນ Android ໂດຍທົ່ວໄປຮັບສະເພາະ host ແລະ port, ດັ່ງນັ້ນແອັບທີ່ຕ້ອງການເຂົ້າສູ່ລະບົບອາດສະແດງຂໍ້ຜິດພາດການເຊື່ອມຕໍ່ທົ່ວໄປແທນ.
- curl: ໃຫ້ສົ່ງຄ່າ
-U "user:pass"ແຍກຕ່າງຫາກ ແທນທີ່ຈະໃສ່ລວມໃນ URL, ເຊິ່ງຈະຊ່ວຍຫຼີກລ່ຽງບັນຫາຕົວອັກສອນພິເສດ. - Python requests: ຕັ້ງຄ່າ
http://user:pass@host:portສຳລັບທັງຄີhttpແລະhttpsຂອງ dictproxies, ແລະ ແປງລະຫັດຜ່ານທີ່ມີຕົວອັກສອນພິເສດດ້ວຍurllib.parse.quote.
ຂໍ້ມູນເຂົ້າສູ່ລະບົບຖືກຕ້ອງແຕ່ຍັງຄົງຂຶ້ນ 407
ຂັ້ນຕອນຕໍ່ໄປໃຫ້ກວດສອບໂປຣໂຕຄອນ. VinaProxy ໃຫ້ບໍລິການພຣັອກຊີ HTTP(S) ທີ່ເຂົ້າສູ່ລະບົບດ້ວຍ user:pass ແລະ SOCKS5 ເຊັ່ນກັນ, ດັ່ງນັ້ນໃຫ້ເລືອກໂປຣໂຕຄອນທີ່ລະບຸໃນລາຍການສັ່ງຊື້ຂອງທ່ານໃນແດຊບອດ. ຖ້າເຄື່ອງມືກວດສອບແຈ້ງວ່າ not socks5, ສະແດງວ່າພອດດັ່ງກ່າວຮອງຮັບ HTTP ແລະ ບໍ່ຄວນຕັ້ງຄ່າເປັນ SOCKS5.
ເທື່ອລະຂັ້ນຕອນ
- 1
ສຳເນົາຂໍ້ຄວາມພຣັອກຊີຈາກແດຊບອດ
ເປີດລາຍການສັ່ງຊື້ໃນແດຊບອດ VinaProxy ຂອງທ່ານ ແລະ ສຳເນົາຂໍ້ຄວາມທັງໝົດແທນທີ່ຈະພິມເອງ.
- 2
ກວດສອບຜ່ານ proxy checker
ວາງຂໍ້ຄວາມລົງໃນ proxy checker. ຜົນລັບ
auth failed (407)ຢືນຢັນວ່າມີບັນຫາກັບຂໍ້ມູນເຂົ້າສູ່ລະບົບ ບໍ່ແມ່ນບັນຫາເຄືອຂ່າຍ. - 3
ປ້ອນຊື່ຜູ້ໃຊ້ ແລະ ລະຫັດຜ່ານໃໝ່ໃຫ້ຖືກຕ້ອງ
ລຶບຂໍ້ມູນທັງສອງຊ່ອງໃນໂປຣແກຣມຂອງທ່ານອອກ ແລ້ວວາງໃໝ່ໂດຍບໍ່ໃຫ້ມີຍະຫວ່າງຢູ່ທາງໜ້າ ຫຼື ທາງຫຼັງ.
- 4
ເລືອກໂປຣໂຕຄອນໃຫ້ກົງກັບລາຍການສັ່ງຊື້
ຕັ້ງຄ່າປະເພດພຣັອກຊີເປັນ HTTP ຫຼື SOCKS5 ໃຫ້ກົງກັບທີ່ລະບຸໃນລາຍການສັ່ງຊື້, ແລ້ວກົດບັນທຶກ.
- 5
ກວດສອບດ້ວຍ curl -v ຖ້າບັນຫາຍັງຄົງຢູ່
ຣັນ
curl -vດ້ວຍຄ່າຕົວຈິງຂອງທ່ານ ແລະ ກວດເບິ່ງແຖວProxy-Authorizationກ່ອນທີ່ຈະມີ 407.
ຄຳຖາມທີ່ຖາມເລື້ອຍໆ
ຂໍ້ຜິດພາດ 407 ເກີດຈາກ ISP ບລັອກພຣັອກຊີຫຼືບໍ່?
ບໍ່ແມ່ນ. ລະຫັດ 407 ຖືກສົ່ງມາຈາກຕົວພຣັອກຊີເອງ, ສະແດງວ່າການເຊື່ອມຕໍ່ສຳເລັດ. ເສັ້ນທາງທີ່ຖືກບລັອກຈະສະແດງເປັນ timeout ຫຼື ປະຕິເສດການເຊື່ອມຕໍ່ແທນ; ເບິ່ງເພີ່ມເຕີມໄດ້ທີ່ proxy timeout.
ເປັນຫຍັງ Chrome ຈຶ່ງຖາມຫາຂໍ້ມູນເຂົ້າສູ່ລະບົບພຣັອກຊີຕະຫຼອດ?
ການປ້ອນຂໍ້ມູນຜິດແຕ່ລະຄັ້ງຈະໄດ້ຮັບລະຫັດ 407 ອີກ ແລະ Chrome ຈະຖາມໃໝ່. ກວດເບິ່ງ Caps Lock ແລະ ໃຫ້ແນ່ໃຈວ່າແປ້ນພິມພາສາຫວຽດນາມ ຫຼື ພາສາອື່ນບໍ່ໄດ້ເພີ່ມເຄື່ອງໝາຍວັນນະຍຸດໃສ່ລະຫັດຜ່ານ.
ຂ້ອຍຈະໃສ່ລະຫັດຜ່ານທີ່ມີເຄື່ອງໝາຍ @ ລົງໃນ URL ພຣັອກຊີໄດ້ແນວໃດ?
ໃຫ້ແປງລະຫັດ: @ ເປັນ %40, : ເປັນ %3A, # ເປັນ %23. ສຳລັບ curl, ການໃຊ້ແຟລັກ -U ຈະຊ່ວຍໃຫ້ບໍ່ຕ້ອງແປງລະຫັດເລີຍ.
Selenium ຫຼື Puppeteer ສະແດງຂໍ້ຜິດພາດ tunnel ແທນທີ່ຈະເປັນ 407. ແມ່ນບັນຫາດຽວກັນຫຼືບໍ່?
ສ່ວນຫຼາຍແມ່ນແມ່ນ. Headless Chrome ບໍ່ສາມາດສະແດງໜ້າຕ່າງເຂົ້າສູ່ລະບົບໄດ້, ດັ່ງນັ້ນ 407 ຈຶ່ງສະແດງເປັນ ERR_TUNNEL_CONNECTION_FAILED. ໃຫ້ສົ່ງຂໍ້ມູນເຂົ້າສູ່ລະບົບຜ່ານກົນໄກ auth ຂອງໄລບຣາຣີ, ດັ່ງທີ່ແນະນຳໃນ Selenium guide.
ພຣັອກຊີສ່ວນຕົວພ້ອມຂໍ້ມູນເຂົ້າສູ່ລະບົບທີ່ຊັດເຈນ
ທຸກລາຍການສັ່ງຊື້ຂອງ VinaProxy ຈະມີຂໍ້ຄວາມ ip:port:user:pass ພ້ອມໃຊ້ງານ ໃຫ້ທ່ານສຳເນົາບາດດຽວ ແລະ ວາງໄດ້ທຸກບ່ອນ.
ເບິ່ງລາຄາພຣັອກຊີ