Chyby proxy 502 Bad Gateway: zjistěte, kdo je odesílatelem
Updated:
Kód 502 Bad Gateway znamená, že zprostředkující server – ať už vaše proxy, nebo vlastní front-end server webu – předal požadavek dál, ale neobdržel platnou odpověď. Stejné číslo, dva zcela odlišní viníci. Než se tedy pustíte do oprav, zjistěte, kdo chybu 502 vlastně vrací.
Jak vypadá chyba 502 vrácená přímo z proxy
Nastavili jsme naši testovací proxy tak, aby vracela kód 502, a zaznamenali odpovědi, které jsou přepsány s 203.0.113.10:8080 a user123:pass456:
- Web na HTTPS:
curl -x http://user123:[email protected]:8080 https://example.comvypíšecurl: (56) CONNECT tunnel failed, response 502. - Běžný web na HTTP: curl obdrží stavový kód
502. - Chrome při načítání HTTPS stránky přes tuto proxy ohlásí
ERR_TUNNEL_CONNECTION_FAILEDa nezobrazí vůbec žádnou stránku s chybou 502. - Nástroj proxy checker zobrazí
HTTP 502; ostatní kódy se zobrazují stejně jakoHTTP <code>.
Jasný signál: chybová stránka 502 na HTTPS webu
U webů na HTTPS proxy pouze otevírá tunel; do šifrovaného spojení nemůže vložit vlastní stránku. Pokud proxy spojení odmítne, Chrome ohlásí ERR_TUNNEL_CONNECTION_FAILED. Pokud tedy na adrese https:// vidíte vykreslenou plnohodnotnou stránku „502 Bad Gateway“, téměř jistě pochází ze serveru daného webu, nikoli z proxy.
Ověřte si to vypnutím proxy a opětovným načtením téže stránky. Pokud se stále zobrazuje 502, potíže má samotný web a jediné, co můžete udělat, je počkat nebo informovat jeho provozovatele.
Kdy kód 502 posílá skutečně proxy
- Cíl neodpovídá proxy. Web nefunguje, je přetížený nebo odmítá spojení z rozsahu IP adres dané proxy.
- Překlep v doméně nebo nepřeložitelná doména. Proxy nedokáže zjistit adresu webu, takže nemá kam požadavek předat.
- Cílový port je uzavřený. Požadavek směřuje na port, na kterém web neposkytuje žádné služby.
- Dočasná závada na straně proxy. Méně častý případ; poznáte ho tak, že přes jednu proxy vrací 502 každý web, ale přes jinou vše funguje.
Co dělat v různých prostředích
- Profily v Chrome nebo antidetect prohlížečích: otevřete ve stejném profilu jiný velký web. Pokud se načte, proxy je v pořádku a problém je na původním webu.
- Telefony: vypněte Wi-Fi proxy a zkuste stránku otevřít přes mobilní data, abyste zjistili, zda web nefunguje obecně.
- curl: přidejte přepínač
-v, abyste viděli, zda 502 dorazí hned poCONNECT, a poté test zopakujte s jinou doménou pro upřesnění příčiny. - Python requests: u stránek na HTTP zkontrolujte
response.status_code == 502a po pauze požadavek zopakujte; u HTTPS stránek vyvolá selhání tunelu výjimkurequests.exceptions.ProxyError. Opakované pokusy rozložte v čase, abyste web nezahltili.
Krok za krokem
- 1
Všimněte si, kde se chyba 502 objevuje
Chybová stránka 502 na https adrese ukazuje na web. Chyba tunelu v Chrome naopak ukazuje na trasu přes proxy.
- 2
Vypněte proxy a stránku načtěte znovu
Kód 502 i bez proxy znamená, že chybu hlásí samotný web.
- 3
Načtěte přes stejnou proxy jiný web
Pokud jiné weby fungují, proxy je v pořádku a spojení odmítá nebo má výpadek pouze původní web.
- 4
Otestujte proxy pomocí testeru
Vložte záznam do proxy checker. Pokud každý web vrací
HTTP 502, vytvořte tiket s tímto výsledkem.
Často kladené otázky
Znamená kód 502, že vypršela platnost mé proxy?
Obvykle ne. Expirovaná nebo zastavená proxy většinou způsobí selhání spojení nebo vypršení časového limitu; viz proxy timeout.
Proč vrací 502 přes proxy pouze jeden web?
Tento web může mít výpadek nebo neodpovídá na spojení z IP adresy proxy. Zkuste to později, případně použijte IP z jiné země.
Jaký je rozdíl mezi kódy 502 a 504?
Kód 502 znamená neplatnou odpověď nebo nemožnost ji získat; kód 504 znamená, že zprostředkující server čekal příliš dlouho. Tester obojí zobrazuje jako HTTP <code>.
Můj scraper občas narazí na 502. Mám vyměnit proxy?
Ojedinělé kódy 502 obvykle značí přetížený cíl. Než začnete měnit proxy, zpomalte frekvenci požadavků a přidejte rozložené opakované pokusy; viz proxies for web scraping.
Privátní IP adresy, které nesdílíte s cizími lidmi
Privátní proxy od VinaProxy vám pomohou vyhnout se zablokování IP adresy způsobenému tím, že ji používal někdo jiný.
Zobrazit ceník