502

Bad Gateway

Επίσημο Κωδικοί υποκατηγορίας
ο downstream διακομιστής επέστρεψε μήνυμα σφάλματος

Καθορισμός του κωδικού κατάστασης HTTP 502

Ο κωδικός κατάστασης 502 Bad Gateway υποδεικνύει ότι ο διακομιστής, ενώ ενεργούσε ως πύλη ή μεσάζων, έλαβε μη έγκυρη απάντηση από έναν εισερχόμενο διακομιστή στον οποίο είχε πρόσβαση κατά την προσπάθεια εκπλήρωσης της αίτησης.

Πηγή / Απόσπασμα από: Ο κωδικός κατάστασης HTTP 502 Bad Gateway καθορίζεται από την ενότητα 6.6.3 του RFC7231.

Πώς να πετάξετε έναν κωδικό κατάστασης 502 με την PHP;

Για την εμφάνιση του κωδικού κατάστασης HTTP 502 σε μια ιστοσελίδα, μπορεί να χρησιμοποιηθεί η συνάρτηση http_response_code της PHP. Η σύνταξη έχει ως εξής: http_response_code(502) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Δοκιμάστε τον κωδικό κατάστασης HTTP 502

Για να είναι δυνατή η εμφάνιση του κωδικού κατάστασης HTTP (στην προκειμένη περίπτωση 502 Bad Gateway) και άλλων πληροφοριών στην πλευρά του πελάτη, η κονσόλα ανάπτυξης πρέπει να ανοίξει με το F12. Στη συνέχεια, μεταβείτε στην καρτέλα "Δίκτυο". Τώρα μπορεί να ανοίξει η σελίδα, ο ιστότοπος (παράδειγμα index.php) θα πρέπει να είναι ορατός στην καρτέλα δικτύου. Αυτή πρέπει να επιλεγεί και στη συνέχεια πρέπει να επιλεγεί το τμήμα Herder. Στη συνέχεια, ο χρήστης θα δει το ακόλουθο αποτέλεσμα:

Κωδικός κατάστασης 502 Bad Gateway
Επισκόπηση
URL: https://http-statuscode.com/errorCodeExample.php?code=502
Κατάσταση: 502 Bad Gateway
Αυτά τα: Network
Διεύθυνση IP: XX.XX.XX.XX
Κωδικός κατάστασης 502 Bad Gateway

Πώς μπορώ να λύσω το πρόβλημα με τον κωδικό κατάστασης 502;

Ο κωδικός κατάστασης HTTP 502 Bad Gateway επιστρέφεται συνήθως από έναν διακομιστή μεσολάβησης, ο οποίος ενεργεί ως ενδιάμεσος μεταξύ του πελάτη (π.χ. ενός προγράμματος περιήγησης στο διαδίκτυο) και του διακομιστή με τον οποίο ο πελάτης θέλει να επικοινωνήσει. Το σφάλμα εμφανίζεται όταν ο διακομιστής μεσολάβησης λαμβάνει μια μη έγκυρη απάντηση από έναν ανάντη διακομιστή. Υπάρχουν διάφορες πιθανές αιτίες για αυτό το σφάλμα και θα αναφερθώ παρακάτω σε μερικά από τα πιο πιθανά προβλήματα και θα εξηγήσω πώς μπορείτε να τα διορθώσετε.

  • Υπερφορτωμένος ή μη προσβάσιμος διακομιστής upstream: Ένας συνηθισμένος λόγος για τον κωδικό κατάστασης HTTP 502 Bad Gateway είναι ότι ο διακομιστής upstream στον οποίο συνδέεται ο διακομιστής μεσολάβησης είναι υπερφορτωμένος ή μη προσβάσιμος. Σε αυτή την περίπτωση, θα πρέπει να βεβαιωθείτε ότι ο διακομιστής upstream λειτουργεί σωστά και διαθέτει αρκετούς πόρους για την επεξεργασία των αιτήσεων. Ελέγξτε τα αρχεία καταγραφής του διακομιστή και τις συνδέσεις δικτύου για να διαπιστώσετε αν υπάρχουν προβλήματα. Εάν ο διακομιστής upstream είναι υπερφορτωμένος, ίσως μπορέσετε να κατανείμετε το φορτίο σε πολλούς διακομιστές ή να προσθέσετε πρόσθετους πόρους για να διορθώσετε το πρόβλημα.
  • Προβλήματα δικτύου: Ένα άλλο πιθανό πρόβλημα είναι τα προβλήματα δικτύου μεταξύ του διακομιστή μεσολάβησης και του διακομιστή upstream. Αυτό μπορεί να είναι μια ασταθής σύνδεση, ένα πρόβλημα DNS ή μια ρύθμιση τείχους προστασίας που εμποδίζει την επικοινωνία. Ελέγξτε τις ρυθμίσεις δικτύου για να βεβαιωθείτε ότι όλες οι απαραίτητες θύρες είναι ανοιχτές και ότι η σύνδεση είναι σταθερή. Ελέγξτε επίσης την επίλυση DNS για να βεβαιωθείτε ότι ο διακομιστής upstream επιλύεται σωστά. Σε ορισμένες περιπτώσεις, μπορεί επίσης να είναι χρήσιμη η επανεκκίνηση του διακομιστή μεσολάβησης για την επίλυση των προβλημάτων δικτύου.
  • Μη ρυθμισμένος διακομιστής μεσολάβησης: Η εσφαλμένη διαμόρφωση του διακομιστή μεσολάβησης μπορεί επίσης να οδηγήσει σε κωδικό κατάστασης HTTP 502 Bad Gateway. Βεβαιωθείτε ότι οι ρυθμίσεις διακομιστή μεσολάβησης είναι σωστές και ότι ο διακομιστής μεσολάβησης προωθεί τις αιτήσεις σωστά στον upstream διακομιστή. Ελέγξτε τα αρχεία διαμόρφωσης και τις ρυθμίσεις του διακομιστή μεσολάβησης για να βεβαιωθείτε ότι είναι σωστές. Σε ορισμένες περιπτώσεις, μπορεί επίσης να είναι χρήσιμο να ενημερώσετε το διακομιστή μεσολάβησης ή να μεταβείτε σε διαφορετική έκδοση για να διορθώσετε τα γνωστά προβλήματα.
  • Λαθασμένη εφαρμογή στον upstream διακομιστή: Είναι επίσης πιθανό ο διακομιστής upstream να έχει μια ελαττωματική εφαρμογή ή διαμόρφωση με αποτέλεσμα να εμφανίζεται κωδικός κατάστασης HTTP 502 Bad Gateway. Ελέγξτε τα αρχεία καταγραφής της εφαρμογής και του διακομιστή για να αναζητήσετε πιθανά σφάλματα ή εξαιρέσεις. Ενημερώστε ή επιδιορθώστε την εφαρμογή για να διορθώσετε τα γνωστά προβλήματα. Μπορεί επίσης να είναι χρήσιμο να συνεργαστείτε με έναν προγραμματιστή ή διαχειριστή συστήματος για την ανάλυση και επίλυση του προβλήματος.
  • Προβλήματα με τον ίδιο το διακομιστή μεσολάβησης: Τέλος, ο κωδικός κατάστασης HTTP 502 Bad Gateway μπορεί επίσης να οφείλεται σε προβλήματα με τον ίδιο τον διακομιστή μεσολάβησης. Αυτό μπορεί να οφείλεται σε σφάλματα λογισμικού, σε ελλείπουσες ενημερώσεις ή σε προβλήματα υλικού. Ελέγξτε τα αρχεία καταγραφής του διακομιστή μεσολάβησης για μηνύματα σφάλματος ή προειδοποιήσεις. Ενημερώστε τον διακομιστή μεσολάβησης στην τελευταία έκδοση και ελέγξτε για γνωστά προβλήματα. Σε ορισμένες περιπτώσεις, μπορεί να είναι απαραίτητη η επανεγκατάσταση του διακομιστή μεσολάβησης ή η μετάβαση σε μια εναλλακτική λύση λογισμικού για την επίλυση του προβλήματος.
    • Είναι σημαντικό να σημειωθεί ότι η επίλυση του κωδικού κατάστασης HTTP 502 Bad Gateway εξαρτάται σε μεγάλο βαθμό από το συγκεκριμένο περιβάλλον και τη διαμόρφωσή σας. Μπορεί να είναι χρήσιμο να συνεργαστείτε με έναν έμπειρο προγραμματιστή ή διαχειριστή συστήματος για τη διάγνωση και τη διόρθωση του προβλήματος.

      .

Πώς να δημιουργήσετε τη δική σας σελίδα σφάλματος για τον κωδικό κατάστασης 502

Η δημιουργία της δικής σας σελίδας σφάλματος 502 Bad Gateway είναι σχετικά εύκολη τόσο με τους διακομιστές ιστού "Apache" όσο και με τους διακομιστές ιστού "NGINX".

Apache Webserver

Ο διακομιστής ιστού "Apache" είναι ένας από τους πιο διαδεδομένους διακομιστές ιστού στο Διαδίκτυο. Για να δημιουργήσετε τη δική σας σελίδα σφάλματος 502 Bad Gateway στον "Apache", πρέπει να κάνετε την ακόλουθη αλλαγή στο ακόλουθο αρχείο.

File: .htaccess
ErrorDocument 502 /errors/502.html

NGINX Webserver

Παρόμοια με τον διακομιστή ιστού "Apache", ο "NGINX" χρησιμοποιείται επίσης ευρέως στο Διαδίκτυο. Για να δημιουργήσετε τη δική σας σελίδα σφάλματος 502 Bad Gateway στο "NGINX", πρέπει να γίνει η ακόλουθη αλλαγή στο ακόλουθο αρχείο.

File: sites-enabled/default
error_page 502 /502.html;
location = /502.html {
    root /usr/share/nginx/html;
    internal;
}

Συμβατότητα του κωδικού κατάστασης 502 με το πρόγραμμα περιήγησης

Chrome no data
Edge no data
Firefox no data
Opera no data
Safari no data
Chrome Android no data
Firefox for Android no data
Opera Android no data
Safari on iOS no data
Internet no data
WebView Android no data

Σταθερές στις γλώσσες προγραμματισμού

HttpStatusCode.BadGateway
http.StatusBadGateway
Response::HTTP_BAD_GATEWAY
httplib.BAD_GATEWAY
http.client.BAD_GATEWAY
http.HTTPStatus.BAD_GATEWAY
:bad_gateway

Υποκωδικοί κωδικοί του κωδικού κατάστασης 502

Οι κωδικοί κατάστασης Sub είναι καθαρά τεχνικοί και δεν πρέπει ποτέ να αποστέλλονται στον χρήστη. Για παράδειγμα, εάν προκύψει ο κωδικός κατάστασης 502.1, μπορεί να καταγραφεί, αλλά ο κωδικός κατάστασης 502 θα σταλεί στον χρήστη.:
502.1 CGI application timeout
HTTP IIS, Ανεπίσημο
502.2 Bad gateway: Premature Exit
HTTP IIS, Ανεπίσημο
502.3 Bad Gateway: Forwarder Connection Error (ARR)
HTP IIS, Ανεπίσημο
502.4 Bad Gateway: No Server (ARR)
HTP IIS, Ανεπίσημο
502.5 WebSocket failure (ARR)
HTTP IIS, Ανεπίσημο
502.6 Forwarded request failure (ARR)
HTTP IIS, Ανεπίσημο
502.7 Execute request failure (ARR)
HTTP IIS, Ανεπίσημο

Εξωτερικοί σύνδεσμοι με περισσότερες πληροφορίες σχετικά με τον κωδικό κατάστασης HTTP 502:

Διασκεδαστικά μιμίδια για τον κωδικό κατάστασης HTTP 502

Συγγραφέας: Tony Brüser
Συγγραφέας: Tony Brüser

Ο Tony Brüser είναι ένας ενθουσιώδης προγραμματιστής ιστοσελίδων με προτίμηση στους κωδικούς κατάστασης HTTP.

LinkedInGitHub