Το μήνυμα 502 Bad Gateway είναι από τα πιο παρεξηγημένα σφάλματα του διαδικτύου. Η πρώτη αντίδραση σχεδόν πάντα είναι η ίδια: «έπεσε ο server». Στην πράξη, όμως, το 502 δεν λέει τίποτα για το πού βρίσκεται το πρόβλημα, μόνο ότι κάπου, ανάμεσα στον browser και την τελική εφαρμογή, ένας ενδιάμεσος κρίκος δεν πήρε απάντηση εγκαίρως.
Σε ένα πραγματικό περιστατικό, μια σελίδα εγγραφής εμφάνιζε στο Chrome:
502 Bad Gateway — nginx
και στο Console:
Failed to load resource: the server responded with a status of 502
Η πρώτη εντύπωση ήταν «πρόβλημα του server». Όταν όμως η ίδια σελίδα δοκιμάστηκε από διαφορετικό browser και δίκτυο, η συμπεριφορά άλλαξε. Αυτό αλλάζει εντελώς το ερώτημα: δεν είναι «γιατί έπεσε ο server», αλλά «πού ακριβώς βρίσκεται η αποτυχία;». Ο οδηγός που ακολουθεί είναι ακριβώς αυτό: μια συστηματική διαδικασία απομόνωσης του προβλήματος, βήμα προς βήμα, πριν καταλήξουμε σε βιαστικά συμπεράσματα.
1. Επιβεβαίωσε αν το πρόβλημα είναι γενικό ή τοπικό
Πριν από οτιδήποτε άλλο, δοκίμασε την ίδια διεύθυνση σε παράθυρο ανώνυμης περιήγησης (Ctrl + Shift + N στον Chrome).
- Αν λειτουργεί σε Incognito: ύποπτα είναι τα cookies, η cache, κάποιο extension ή μια «κατεστραμμένη» συνεδρία (session).
- Αν δεν λειτουργεί ούτε εκεί: προχώρα στο επόμενο βήμα.
2. Δοκίμασε άλλον browser
Άνοιξε την ίδια σελίδα σε Edge, Firefox ή Safari.
- Αν λειτουργεί αλλού: το πρόβλημα είναι πιθανότατα browser-specific, δεν σημαίνει ακόμη βλάβη στον server.
- Αν αποτυγχάνει παντού: πέρασε σε έλεγχο δικτύου.
3. Δοκίμασε από άλλο δίκτυο
Ιδανικά, δοκίμασε από κινητό μέσω 4G/5G, όχι μέσω Wi-Fi. Αν η σελίδα λειτουργεί στο κινητό δίκτυο αλλά όχι στο Wi-Fi σου, το πρόβλημα είναι πιθανότατα κάπου στο DNS, το firewall, τον proxy, το VPN, την cache του router ή σε φιλτράρισμα από τον πάροχο (ISP). Με αυτή τη δοκιμή αλλάζεις ταυτόχρονα συσκευή, browser, DNS και διαδρομή δικτύου, γι’ αυτό είναι τόσο χρήσιμη.
4. Εντόπισε ποιο ακριβώς request επιστρέφει το 502
Αυτό είναι πιθανότατα το πιο σημαντικό βήμα όλου του οδηγού. Άνοιξε τα Developer Tools (F12) → καρτέλα Network, μετά κάνε Ctrl + R για ανανέωση. Φιλτράρισε με Status = 502 ή εντόπισε τις κόκκινες γραμμές, και δες στο αποτυχημένο request το Request URL, το Status Code, τη Μέθοδο, τα Response και Request Headers, και τον Initiator.
Μην αρκείσαι στο γενικό μήνυμα σφάλματος της σελίδας. Είναι πολύ πιθανό η κύρια ιστοσελίδα (π.χ. example.com) να λειτουργεί κανονικά, αλλά να αποτυγχάνει μόνο ένα ενσωματωμένο resource, για παράδειγμα ένα endpoint έκδοσης εισιτηρίων. Το σωστό συμπέρασμα τότε δεν είναι «το site είναι εκτός λειτουργίας», αλλά «αποτυγχάνει συγκεκριμένα το ticketing endpoint».
5. Έλεγξε cookies και session
Πολλά 502 εμφανίζονται μόνο σε συγκεκριμένη συνεδρία χρήστη. Στο Chrome: F12 → Application → Cookies, ή Settings → Privacy and security → Site data. Διάγραψε τα δεδομένα μόνο για το συγκεκριμένο domain και κάνε reload. Αν το πρόβλημα διορθωθεί, η πιθανή αιτία είναι μια κατεστραμμένη συνεδρία, μη έγκυρο cookie, ή ληγμένη κατάσταση authentication.
6. Κάνε hard reload
Το απλό Ctrl + R δεν είναι πάντα αρκετό. Χρησιμοποίησε Ctrl + Shift + R ή Ctrl + F5, ώστε ο browser να ζητήσει ξανά όλα τα resources από τον server, χωρίς cache.
7. Καθάρισε cache μόνο για το συγκεκριμένο site
Δεν χρειάζεται να διαγράψεις όλο το ιστορικό του browser. Στο F12 → Application → Storage χρησιμοποίησε την επιλογή Clear site data και μετά κάνε reload.
8. Έλεγξε τα extensions
AdBlock, uBlock Origin, antivirus browser extensions, privacy tools και εργαλεία εταιρικής ασφάλειας προκαλούν συχνά τέτοιου είδους προβλήματα. Δοκίμασε στο chrome://extensions να τα απενεργοποιήσεις προσωρινά. Ένα γρήγορο τεστ: αν το site λειτουργεί σε Incognito με απενεργοποιημένα extensions εκεί, αυτό είναι ισχυρή ένδειξη ότι κάποιο extension επηρεάζει το request.
9. Έλεγξε τα third-party cookies
Αυτό έχει ιδιαίτερη σημασία σε υπηρεσίες έκδοσης εισιτηρίων, πληρωμών, κρατήσεων, embedded login και γενικά iframe-based υπηρεσίες. Αν η φόρμα φορτώνεται από διαφορετικό domain, ο Chrome μπορεί να μπλοκάρει cookies που χρειάζεται η υπηρεσία. Έλεγξε στο Settings → Privacy and security → Third-party cookies και δοκίμασε προσωρινά να τα επιτρέψεις για το συγκεκριμένο site.
10. Έλεγξε τους Service Workers
Ένας παλιός service worker μπορεί να συνεχίζει να σερβίρει cached δεδομένα. Στο F12 → Application → Service Workers, επίλεξε Unregister και κάνε reload. Αυτό είναι ιδιαίτερα συχνό σε PWA, React και Angular εφαρμογές, και γενικότερα σε σύγχρονες SaaS πλατφόρμες.
11. Έλεγξε αν υπάρχει CDN ή proxy στη διαδρομή
Ένα 502 δεν σημαίνει απαραίτητα ότι απέτυχε η ίδια η εφαρμογή. Η πραγματική διαδρομή ενός request συνήθως μοιάζει κάπως έτσι:
Browser → Cloudflare / CDN → nginx → Application Server → API
Το 502 μπορεί να προέρχεται από οποιοδήποτε ενδιάμεσο σημείο αυτής της αλυσίδας. Στα Response Headers, ενδείξεις όπως server: nginx, cf-ray, cloudflare, x-cache ή via μπορούν να αποκαλύψουν ποιο ακριβώς component απάντησε τελικά.
12. Δοκίμασε με curl
Από το Command Prompt ή το Terminal:
curl -I "https://example.com"
ή για συγκεκριμένο endpoint:
curl -v "https://example.com/api/endpoint"
Αν το curl λειτουργεί κανονικά αλλά ο Chrome όχι, το πρόβλημα σχετίζεται πιθανότατα με κατάσταση του browser — cookies, headers, extensions ή service worker — και όχι με τον server.
13. Έλεγξε το DNS
Σε Windows:
nslookup example.com
ipconfig /flushdns
και ξαναδοκίμασε. Μπορείς επίσης να δοκιμάσεις προσωρινά εναλλακτικό DNS, όπως 1.1.1.1 ή 8.8.8.8.
14. Έλεγξε VPN και proxy
Αν χρησιμοποιείς VPN, απενεργοποίησέ το προσωρινά. Στα Windows, δες το Settings → Network & Internet → Proxy — ο Chrome χρησιμοποιεί συνήθως τις ρυθμίσεις proxy του συστήματος. Ένας proxy μπορεί να παράγει δικό του 502 Bad Gateway, χωρίς να υπάρχει καν πρόβλημα στον πραγματικό server.
15. Δες αν το πρόβλημα σχετίζεται με συγκεκριμένες παραμέτρους
Παρατήρησε αν το 502 εμφανίζεται μόνο όταν υπάρχουν συγκεκριμένες παράμετροι στο URL, π.χ. /event?event=defence-tech-summit-2026&embed=1&lang=el. Δοκίμασε το ίδιο endpoint χωρίς utm_source, utm_medium ή άλλα tracking parameters. Αρκετές εφαρμογές χειρίζονται λανθασμένα συγκεκριμένα query strings.
Η λογική ροή διάγνωσης
Συνοπτικά, η διαδικασία μπορεί να αναπαρασταθεί ως εξής:

Τι πρέπει να καταγράψεις πριν αλλάξεις οτιδήποτε
Για ουσιαστική διάγνωση, κράτησε σημειώσεις: ημερομηνία και ώρα, το URL, ένα screenshot, το αποτυχημένο request από το Network tab, τον HTTP status κωδικό, το Request URL, τα Response Headers, τον browser και την έκδοσή του, και αν το πρόβλημα εμφανίζεται σε Incognito, σε άλλον browser ή σε άλλη σύνδεση. Έτσι μπορείς αργότερα να συγκρίνεις πραγματικά δεδομένα αντί για εντυπώσεις.
Το συχνό λάθος: «Βλέπω 502, άρα φταίει ο server»
Όχι απαραίτητα. Το 502 Bad Gateway περιγράφει το αποτέλεσμα ενός request, όχι τη ρίζα του προβλήματος. Η σωστή διαδικασία είναι: Παρατήρηση → Αναπαραγωγή → Απομόνωση → Διάγνωση → Διόρθωση και όχι απλώς «Σφάλμα → Υπόθεση → Συμπέρασμα». Είναι μια μικρή αλλά χαρακτηριστική περίπτωση όπου η βιασύνη να αποδοθεί ευθύνη «στον server» οδηγεί σε λάθος διάγνωση, χαμένο χρόνο και συχνά σε ένα ticket υποστήριξης που στέλνεται στο λάθος τμήμα.
Checklist 2 λεπτών
Την επόμενη φορά που θα δεις 502:
- Incognito
- Άλλος browser
- Κινητό με 4G/5G
- DevTools → Network
- Εντόπισε το ακριβές request
- Clear site data
- Απενεργοποίησε extensions
- Έλεγξε third-party cookies
- Έλεγξε VPN / proxy
- Μόνο τότε εξέτασε ενδεχόμενη server-side βλάβη
