407 Proxy Authentication Required қатесін қалай түзетуге болады
Updated:
407 қатесі көрінгенінен әлдеқайда жақсы жаңалық: құрылғыңыз проксиге қосылды және желі жолы ашық. Прокси жай ғана дұрыс логин мен құпия сөзді алмағанын хабарлап тұр. Сондықтан 407 қателерінің барлығы дерлік роутерде немесе брандмауэрде емес, деректерді енгізу деңгейінде шешіледі.
407 қатесінің себептері (ең жиі кездесетіндері алдымен)
- Қате немесе көрсетілмеген логин/құпия сөз. Қате терілген бір таңба немесе құпия сөзбен бірге көшірілген соңындағы бос орын. 407 қателерінің көбі дәл осыған байланысты болады.
- Өрістердің қате ұяшықтарға қойылуы. Бүкіл
ip:port:user:passжолы Host өрісіне салынып кетеді немесе логин құпия сөз өрісіне түседі. Кейбір құралдар бұл төрт өрісті өздері бөледі, ал кейбіреулері бөлмейді. - Қолданбаның деректерді мүлдем жібермеуі. Операциялық жүйенің прокси баптауларында тек мекенжай мен порт сақталады. Құпия сөзді сұрай алмайтын қолданбалар аутентификация тақырыбынсыз қосылып, жауап ретінде 407 қатесін алады.
- Прокси URL ішіндегі арнайы таңбалар.
http://user:pass@host:portпішіміндегі құпия сөздегі@,:немесе#сияқты таңбалар пайыздық кодталуы тиіс (@таңбасы%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 хабарламасын шығарады. Ал -w %{http_code} параметрі бар қарапайым HTTP сайтында curl тек 407 деп шығарады.
Деректердің мүлдем жіберілген-жіберілмегенін тексеру үшін -v параметрін қосыңыз. Журналда > CONNECT example.com:443 HTTP/1.1, одан кейін > Proxy-Authorization: Basic ..., және содан кейін ғана 407 көрсетіледі. Егер Proxy-Authorization жолы болмаса, клиентіңіз логинді мүлдем жібермеген.
VinaProxy прокси тексеру құралы бұл жағдайды auth failed (407) ретінде көрсетеді. Кіру терезесі жоқ Headless Chrome оны ERR_TUNNEL_CONNECTION_FAILED ретінде шығарады; туннель қателері бетін қараңыз.
Әр түрлі орталарға арналған шешімдер
- Windows және Chrome: Chrome тек мекенжай мен портты сақтайтын Windows прокси баптауларын (Параметрлер > Желі және интернет > Прокси) пайдаланады. Бет алғаш жүктелгенде, Chrome прокси логині мен құпия сөзін сұрайтын кіру терезесін ашады. Егер оны қате енгізсеңіз және терезе қайта шықпаса, Chrome-ның барлық терезелерін жауып, қайта ашыңыз.
- Антидетект браузерлер (AdsPower, GoLogin, GenLogin): Host, Port, Username және Password мәндерін бөлек өрістерде сақтаңыз. Құпия сөзді өңдеудің орнына оның өрісін толық тазалап, қайта қойыңыз. Әрбір өріс бойынша нұсқаулықты GoLogin орнату нұсқаулығынан таба аласыз.
- Телефондар: iPhone-да Параметрлер > Wi-Fi > (i) > Проксиді теңшеу бөлімінде Аутентификация ауыстырып-қосқышы бар; оны өшірулі қалдырсаңыз, 407 қатесі туындайды. Android әдетте тек хост пен портты ғана қабылдайды, сондықтан логин қажет ететін қолданбалар оның орнына жалпы байланыс қатесін көрсетуі мүмкін.
- curl: оны URL ішіне кірістірмей, арнайы таңбаларға қатысты мәселелерді болдырмау үшін
-U "user:pass"параметрін бөлек беріңіз. - Python requests:
proxiesсөздігініңhttpжәнеhttpsкілттеріне бірдейhttp://user:pass@host:portмәнін беріңіз және күрделі құпия сөздердіurllib.parse.quoteарқылы кодтаңыз.
Деректер дұрыс, бірақ 407 қатесі жойылмады
Енді хаттамаларды салыстырыңыз. VinaProxy user:pass логині бар HTTP(S) проксилерін және SOCKS5 проксилерін де ұсынады, сондықтан басқару тақтасындағы тапсырысыңызда көрсетілген хаттаманы таңдаңыз. Егер тексеру құралы not socks5 деп жауап берсе, бұл порт HTTP хаттамасымен жұмыс істейді және оны SOCKS5 ретінде баптауға болмайды.
Қадам бойынша
- 1
Прокси жолын басқару тақтасынан көшіріп алыңыз
VinaProxy басқару тақтасында тапсырысыңызды ашып, жолды қолмен термей, толығымен көшіріп алыңыз.
- 2
Оны прокси тексеру құралы арқылы тексеріңіз
Оны прокси тексеру құралына қойыңыз.
auth failed (407)нәтижесі мәселенің желіде емес, деректерде екенін растайды. - 3
Логин мен құпия сөзді қайтадан анық енгізіңіз
Бағдарламаңыздағы екі өрісті де тазалап, басында немесе соңында бос орындар қалдырмай, оларды қайта қойыңыз.
- 4
Хаттаманы тапсырысқа сәйкестендіріңіз
Прокси түрін тапсырыста көрсетілгендей HTTP немесе SOCKS5 күйіне дәл орнатып, сақтаңыз.
- 5
Қате жойылмаса, curl -v арқылы қадағалаңыз
Нақты мәндеріңізбен
curl -vпәрменін іске қосыңыз және 407 алдындаProxy-Authorizationжолының бар-жоғын тексеріңіз.
Жиі қойылатын сұрақтар
407 қатесі ISP проксиді бұғаттағандықтан туындауы мүмкін бе?
Жоқ. 407 қатесін проксидің өзі жібереді, яғни байланыс орнатылды. Бұғатталған байланыс тайм-аут немесе байланыстан бас тарту ретінде көрінеді; прокси тайм-ауты бөлімін қараңыз.
Неліктен Chrome прокси логинін қайта-қайта сұрай береді?
Әрбір қате енгізу кезінде тағы бір 407 қайтарылып, Chrome қайта сұрайды. Caps Lock пернесін тексеріңіз және вьетнамша немесе басқа енгізу әдісі құпия сөзге диакритикалық белгілер қосып жатпағанына көз жеткізіңіз.
Құрамында @ таңбасы бар құпия сөзді прокси URL-іне қалай енгізуге болады?
Оны кодтаңыз: @ таңбасы %40, : таңбасы %3A, # таңбасы %23 ретінде. curl құралында -U жалаушасы кодтауды мүлдем қажет етпейді.
Selenium немесе Puppeteer 407 орнына туннель қатесін көрсетеді. Бұл сол мәселе ме?
Әдетте иә. Headless Chrome кіру терезесін көрсете алмайды, сондықтан 407 қатесі ERR_TUNNEL_CONNECTION_FAILED түрінде шығады. Деректерді Selenium нұсқаулығындағыдай кітапхананың аутентификация тетігі арқылы беріңіз.
Дайын деректері бар жеке проксилер
Әрбір VinaProxy тапсырысы сізге бір рет көшіріп, кез келген жерге қоюға болатын дайын ip:port:user:pass жолын береді.
Прокси бағаларын көру