Σφάλματα proxy 502 Bad Gateway: εντοπίστε ποιος το έστειλε
Updated:
Το 502 Bad Gateway σημαίνει ότι ένας ενδιάμεσος διακομιστής, ο οποίος θα μπορούσε να είναι το proxy σας ή ο διακομιστής front-end του ίδιου του ιστότοπου, προώθησε το αίτημα και δεν έλαβε έγκυρη απάντηση. Ο ίδιος αριθμός, δύο εντελώς διαφορετικοί υπαίτιοι, οπότε πριν διορθώσετε οτιδήποτε, εξακριβώστε ποιος επιστρέφει το 502.
Πώς μοιάζει ένα 502 από το proxy
Ρυθμίσαμε το δοκιμαστικό proxy μας να απαντά με 502 και καταγράψαμε τις αποκρίσεις, προσαρμοσμένες με 203.0.113.10:8080 και user123:pass456:
- Ιστότοπος HTTPS: η εντολή
curl -x http://user123:[email protected]:8080 https://example.comεκτυπώνειcurl: (56) CONNECT tunnel failed, response 502. - Ιστότοπος απλού HTTP: το curl λαμβάνει κατάσταση
502. - Το Chrome κατά τη φόρτωση μιας σελίδας HTTPS μέσω αυτού του proxy αναφέρει
ERR_TUNNEL_CONNECTION_FAILEDκαι δεν εμφανίζει καθόλου σελίδα 502. - Το proxy checker εμφανίζει
HTTP 502· άλλοι κωδικοί εμφανίζονται με τον ίδιο τρόπο ωςHTTP <code>.
Το σημάδι: μια σελίδα 502 σε έναν ιστότοπο HTTPS
Για ιστότοπους HTTPS, το proxy ανοίγει μόνο ένα tunnel· δεν μπορεί να παρεμβάλει τη δική του σελίδα μέσα σε μια κρυπτογραφημένη σύνδεση. Εάν το proxy απορρίψει τη σύνδεση, το Chrome αναφέρει ERR_TUNNEL_CONNECTION_FAILED. Επομένως, όταν βλέπετε μια πλήρη σελίδα "502 Bad Gateway" να προβάλλεται σε μια διεύθυνση https://, σχεδόν σίγουρα προέρχεται από τον διακομιστή του ιστότοπου και όχι από το proxy.
Επιβεβαιώστε το απενεργοποιώντας το proxy και φορτώνοντας την ίδια σελίδα. Εάν εξακολουθεί να εμφανίζει 502, ο ιστότοπος αντιμετωπίζει πρόβλημα, και το μόνο που μπορείτε να κάνετε είναι να περιμένετε ή να ενημερώσετε τον διαχειριστή του.
Όταν το 502 αποστέλλεται πράγματι από το proxy
- Ο προορισμός δεν απαντά στο proxy. Ο ιστότοπος είναι εκτός λειτουργίας, υπερφορτωμένος ή απορρίπτει συνδέσεις από το εύρος IP του proxy.
- Λανθασμένο ή μη επιλύσιμο domain. Το proxy δεν μπορεί να βρει τη διεύθυνση του ιστότοπου, οπότε δεν υπάρχει τίποτα για προώθηση.
- Η θύρα προορισμού είναι κλειστή. Το αίτημα στοχεύει σε μια θύρα που δεν εξυπηρετεί ο ιστότοπος.
- Προσωρινό σφάλμα από την πλευρά του proxy. Πιο σπάνιο· το παρατηρείτε όταν κάθε ιστότοπος επιστρέφει 502 μέσω ενός proxy, αλλά λειτουργεί κανονικά μέσω άλλου.
Τι να κάνετε σε κάθε περιβάλλον
- Προφίλ Chrome ή antidetect: ανοίξτε έναν διαφορετικό μεγάλο ιστότοπο στο ίδιο προφίλ. Αν φορτώσει, το proxy λειτουργεί σωστά και το πρόβλημα εντοπίζεται στον αρχικό ιστότοπο.
- Κινητά τηλέφωνα: απενεργοποιήστε το proxy στο Wi-Fi και δοκιμάστε τη σελίδα μέσω δεδομένων κινητής τηλεφωνίας για να δείτε αν ο ιστότοπος αποτυγχάνει για όλους.
- curl: προσθέστε
-vγια να δείτε το 502 να φτάνει αμέσως μετά τοCONNECTκαι στη συνέχεια επαναλάβετε με διαφορετικό domain για να περιορίσετε την αιτία. - Python requests: για σελίδες HTTP ελέγξτε
response.status_code == 502και δοκιμάστε ξανά μετά από μια παύση· για σελίδες HTTPS, το αποτυχημένο tunnel προκαλεί εξαίρεσηrequests.exceptions.ProxyError. Αφήστε χρονικό διάστημα ανάμεσα στις προσπάθειες αντί να κατακλύζετε τον ιστότοπο με αιτήματα.
Βήμα προς βήμα
- 1
Παρατηρήστε πού εμφανίζεται το 502
Μια σελίδα 502 σε μια διεύθυνση https υποδεικνύει τον ιστότοπο. Ένα σφάλμα tunnel στο Chrome υποδεικνύει τη διαδρομή του proxy.
- 2
Απενεργοποιήστε το proxy και ανανεώστε τη σελίδα
Ένα 502 χωρίς το proxy σημαίνει ότι ο ίδιος ο ιστότοπος αντιμετωπίζει πρόβλημα.
- 3
Φορτώστε έναν άλλο ιστότοπο μέσω του ίδιου proxy
Εάν άλλοι ιστότοποι λειτουργούν, το proxy είναι εντάξει και μόνο ο αρχικός ιστότοπος απορρίπτει τη σύνδεση ή είναι εκτός λειτουργίας.
- 4
Ελέγξτε το proxy με το εργαλείο ελέγχου
Επικολλήστε τη γραμμή στο proxy checker. Εάν κάθε ιστότοπος δίνει
HTTP 502, ανοίξτε ένα αίτημα υποστήριξης με το αποτέλεσμα.
Συχνές ερωτήσεις
Σημαίνει το 502 ότι το proxy μου έχει λήξει;
Συνήθως όχι. Ένα ληγμένο ή ανενεργό proxy τείνει να προκαλεί αποτυχία σύνδεσης ή χρονικό όριο (timeout)· δείτε proxy timeout.
Γιατί μόνο ένας ιστότοπος επιστρέφει 502 μέσω του proxy;
Αυτός ο ιστότοπος ενδέχεται να αντιμετωπίζει πρόβλημα ή να μην απαντά σε συνδέσεις από την IP του proxy. Δοκιμάστε αργότερα ή χρησιμοποιήστε μια IP από άλλη χώρα.
Ποια είναι η διαφορά μεταξύ 502 και 504;
Το 502 σημαίνει ότι λήφθηκε μη έγκυρη απάντηση ή δεν ήταν δυνατή η λήψη καμίας· το 504 σημαίνει ότι ο ενδιάμεσος διακομιστής περίμενε πάρα πολύ. Το εργαλείο ελέγχου εμφανίζει και τα δύο ως HTTP <code>.
Το scraper μου εμφανίζει περιστασιακά 502. Πρέπει να αλλάξω proxies;
Τα σποραδικά 502 συνήθως σημαίνουν υπερφορτωμένο στόχο. Μειώστε τον ρυθμό αιτημάτων σας και προσθέστε χρονικά διαστήματα μεταξύ των επαναπροσπαθειών πριν αλλάξετε proxies· δείτε proxies for web scraping.
Ιδιωτικές IP, χωρίς κοινή χρήση με αγνώστους
Τα private proxies του VinaProxy σάς βοηθούν να αποφύγετε τον αποκλεισμό μιας IP επειδή τη χρησιμοποιούσε κάποιος άλλος.
Δείτε τιμές