504

Gateway Timeout

Επίσημο
Ο γονικός διακομιστής δεν ανταποκρίθηκε εγκαίρως

Γενική επεξήγηση του κωδικού κατάστασης 504

Το σφάλμα HTTP 504 Gateway Timeout εμφανίζεται όταν ένας διακομιστής προσπαθεί να απαντήσει σε ένα αίτημα από έναν πελάτη, αλλά δεν μπορεί να το κάνει μέσα σε εύλογο χρονικό διάστημα. Αυτό το σφάλμα αναφέρεται συνήθως ως "χρονικό όριο πύλης" επειδή συχνά εμφανίζεται όταν ένας διακομιστής μεσολάβησης ή μια πύλη που μεσολαβεί μεταξύ του πελάτη και του διακομιστή δεν είναι σε θέση να συνδεθεί ή να λάβει απάντηση από τον διακομιστή. Αυτό μπορεί να έχει διάφορους λόγους, όπως υπερφόρτωση του διακομιστή, προβλήματα δικτύου ή ανεπαρκείς ρυθμίσεις του διακομιστή μεσολάβησης ή της πύλης.

.

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

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

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

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

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

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

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

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

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

Υπάρχουν διάφοροι πιθανοί λόγοι για τους οποίους μπορεί να εμφανιστεί ένα σφάλμα HTTP 504 Gateway Timeout "Gateway Timeout", όπως:

  1. Υπερφόρτωση διακομιστή: Εάν ένας διακομιστής λαμβάνει πάρα πολλά αιτήματα και δεν είναι σε θέση να τα απαντήσει σε εύλογο χρονικό διάστημα, μπορεί να εμφανιστεί ένα σφάλμα timeout. Αυτό μπορεί να επιλυθεί με την κλιμάκωση του διακομιστή ή την προσθήκη πόρων, όπως CPU, RAM ή αποθηκευτικού χώρου.
  2. Προβλήματα δικτύου: Ένα σφάλμα χρονικού ορίου μπορεί επίσης να εμφανιστεί εάν υπάρχουν προβλήματα με τη σύνδεση δικτύου μεταξύ του πελάτη και του διακομιστή. Αυτό μπορεί να επιδιορθωθεί με τον έλεγχο της σύνδεσης δικτύου, τον έλεγχο των ρυθμίσεων του δρομολογητή ή του τείχους προστασίας ή την επανεκκίνηση των στοιχείων δικτύου.
  3. Προβλήματα μεσολάβησης ή πύλης: Μια πύλη ή ένας μεσάζων που μεσολαβεί μεταξύ του πελάτη και του διακομιστή μπορεί επίσης να προκαλέσει σφάλμα timeout. Αυτό μπορεί να διορθωθεί με τον έλεγχο και την προσαρμογή των ρυθμίσεων του διακομιστή μεσολάβησης ή της πύλης.
  4. Αργή εφαρμογή ή βάση δεδομένων: Εάν μια εφαρμογή ή βάση δεδομένων εκτελείται αργά, αυτό μπορεί επίσης να οδηγήσει σε σφάλμα χρονικού ορίου. Αυτό μπορεί να διορθωθεί με τη βελτιστοποίηση της εφαρμογής ή της βάσης δεδομένων.

Για την επίλυση του προβλήματος μπορούν να ληφθούν τα ακόλουθα μέτρα:

  1. Ελέγξτε την κατάσταση του διακομιστή και βεβαιωθείτε ότι δεν είναι υπερφορτωμένος.
  2. Ελέγξτε τη σύνδεση δικτύου και βεβαιωθείτε ότι είναι σταθερή και αξιόπιστη.
  3. Ελέγξτε τη διαμόρφωση των διακομιστών μεσολάβησης ή των πυλών και προσαρμόστε την, εάν είναι απαραίτητο.
  4. Βελτιστοποιήστε την εφαρμογή ή τη βάση δεδομένων για να βελτιώσετε την απόδοσή της.
  5. Η επανεκκίνηση των στοιχείων του δικτύου ή των διακομιστών μπορεί επίσης να βοηθήσει στη διόρθωση του προβλήματος.

Σε πολλές περιπτώσεις, ένας συνδυασμός αυτών των μέτρων μπορεί να λύσει το πρόβλημα.

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

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

Apache Webserver

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

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

NGINX Webserver

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

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

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

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.GatewayTimeout
http.StatusGatewayTimeout
Response::HTTP_GATEWAY_TIMEOUT
httplib.GATEWAY_TIMEOUT
http.client.GATEWAY_TIMEOUT
http.HTTPStatus.GATEWAY_TIMEOUT
:gateway_timeout

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

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

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

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

LinkedInGitHub