Ένα στιγμιότυπο μιας σελίδας σφάλματος 404 στην αγγλική Βικιπαίδεια.
Το μήνυμα σφάλματος404 ή"Not Found" (Δεν Βρέθηκε) είναι ένας κωδικός απάντησης του πρωτοκόλλουHTTP, που δείχνει ότι ο πελάτης ήταν σε θέση να επικοινωνήσει με τον διακομιστή, αλλά ο διακομιστής δεν μπόρεσε να βρει ό,τι ζητήθηκε. Ένα σφάλμα 404 δεν πρέπει να συγχέεται με το σφάλμα"server not found" (δεν βρέθηκε διακομιστής) ή άλλα παρόμοια λάθη, στα οποία η σύνδεση με τον διακομιστή προορισμού δεν μπορούσε να γίνει καθόλου. Στο μήνυμα σφάλματος 404 υποδηλώνεται πως η σελίδα που ζητήθηκε μπορεί να είναι διαθέσιμη και πάλι στο μέλλον.
Το μήνυμα για σφάλμα 404 συχνά επιστρέφεται όταν οι σελίδες έχουν μετακινηθεί ή διαγραφεί. Στην πρώτη περίπτωση, η καλύτερη απάντηση είναι η ιστοσελίδα να επιστρέψει στον διακομιστή ένα μήνυμα301 Moved Permanently, το οποίο μπορεί να διαμορφωθεί στα περισσότερα αρχεία ρυθμίσεων του server, ή μέσω της επανασυγγραφής του URL. Στη δεύτερη περίπτωση, θα πρέπει να επιστραφεί ένα μήνυμα410 Gone. Επειδή αυτές οι δύο επιλογές απαιτούν ειδική διαμόρφωση του διακομιστή, οι περισσότερες ιστοσελίδες δεν κάνουν χρήση τους.
Σε επίπεδο HTTP, ο κωδικός απάντησης 404 ακολουθείται από μια αναγνώσιμη από τον άνθρωπο "φράση". Η προδιαγραφή του HTTP προτείνει τη φράση "not found" (δεν βρέθηκε)[1], και πολλοί διακομιστές έχουν ως προεπιλογή μια σελίδαHTML που περιλαμβάνει τόσο τον κωδικό 404 όσο και την φράση αυτή.
Τα σφάλματα 404 δεν πρέπει να συγχέονται με τα σφάλματα τουDNS, τα οποία εμφανίζονται όταν μια συγκεκριμένη διεύθυνση URL αναφέρεται σε ένα όνομα διακομιστή που δεν υπάρχει. Ένα σφάλμα 404 υποδεικνύει ότι ο διακομιστής βρέθηκε, αλλά ότι δεν ήταν σε θέση να ανακτήσει τη σελίδα που ζητήθηκε.
Οι webservers μπορούν τυπικά να ρυθμιστούν ώστε να εμφανίζουν μια προσαρμοσμένη σελίδα σφάλματος, που μπορεί να περιλαμβάνει μια πιο φυσική περιγραφή, αναφέροντας τη γονική τοποθεσία ή μερικές φορές περιέχοντας μια φόρμα αναζήτησης. Η επίπεδου πρωτοκόλλου φράση, η οποία είναι κρυμμένη από τον χρήστη, είναι σπάνια προσαρμοσμένη.
ΣτονInternet Explorer (πριν από τον Internet Explorer 7), ωστόσο, δεν θα εμφανίζει προσαρμοσμένες σελίδες, εκτός αν είναι μεγαλύτερες από 512 bytes, επιλέγοντας αντ' αυτού να εμφανίσει μια "φιλική" σελίδα λάθους. ΤοGoogle Chrome περιλαμβάνει παρόμοιες λειτουργίες, όπου το 404 αντικαθίσταται με εναλλακτικές προτάσεις που δημιουργούνται από αλγόριθμους της Google, αν η σελίδα έχει μέγεθος μικρότερο από 512 byte. Ένα άλλο πρόβλημα είναι ότι εάν η σελίδα δεν παρέχει έναfavicon, και υπάρχει μια προσαρμοσμένη σελίδα σφάλματος 404, θα προκύψει επιπλέον κυκλοφορία και μεγαλύτεροι χρόνοι φόρτωσης.[2][3]
Μερικοί ιστοχώροι εμφανίζουν την φράση "not found" με την επιστροφή μιας τυπικής σελίδας, με κωδικό απόκρισης "200 ΟΚ". Η περίπτωση αυτή είναι γνωστή ωςSoft 404.
Τα Soft 404 είναι προβληματικά κατά τις αυτοματοποιημένες μεθόδους για την ανακάλυψη μιας σπασμένης σύνδεσης, κυρίως από τις μηχανές αναζήτησης. Ορισμένες μηχανές αναζήτησης, όπως τοYahoo, κάνουν χρήση αυτοματοποιημένων διαδικασιών για την ανίχνευση Soft 404s.[4] Τα Soft 404 μπορεί να προκύψουν ως αποτέλεσμα των λαθών διαμόρφωσης, κατά την χρήση λογισμικού διακομιστή HTTP, όπως για παράδειγμα όταν στο λογισμικόApache, όταν έναError Document 404 (που περιέχεται στο αρχείο ρυθμίσεων.htaccess) ορίζεται ως απόλυτη διαδρομή (π.χ.http://example.com/error.html) αντί ως σχετική (/ error.html).[5]
Μερικοί proxy servers δημιουργούν ένα σφάλμα 404 όταν ο απομακρυσμένος υπολογιστής δεν είναι παρών. Εμφανίζουν το μήνυμα 404 αντί να επιστρέψουν το σωστό εύρους 500 κωδικό, για λάθη όπως αποτυχημένη ανάλυση ονόματος κεντρικού υπολογιστή ή άρνηση σύνδεσης TCP που αποτρέπει τον διακομιστή μεσολάβησης από την ικανοποίηση του αιτήματος. Αυτό μπορεί να προκαλέσει σύγχυση στα προγράμματα που αναμένουν και ενεργούν σε συγκεκριμένες απαντήσεις, καθώς δεν μπορούν πλέον εύκολα να γίνει διάκριση ανάμεσα στο αν ο διακομιστής είναι απών ή αν απλά μια σελίδα είναι απούσα (ενώ ο διακομιστής όχι).