Die Standard-404 ist eine weiße Seite mit Servername und Version darauf. Sie verliert den Besucher und liefert jedem, der Ihre Seite scannt, eine genaue Versionsnummer zum Nachschlagen. Ihre eigene Seite hält die Leute auf der Website und sagt nichts, was sie nicht sagen sollte.
Nginx
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /404.html { root /var/www/site/public; internal; }
location = /50x.html { root /var/www/site/public; internal; }
server_tokens off;
internal heißt, dass die Seite nur als Fehler erreichbar ist, nicht durch Eintippen ihrer Adresse. server_tokens off entfernt die Version aus jeder Antwort und jeder Fehlerseite.
Apache und LiteSpeed
ErrorDocument 404 /404.html
ErrorDocument 500 /50x.html
ServerSignature Off
Was auf die Seite gehört
- Ein klarer Satz, der sagt, was passiert ist — ohne Stacktrace.
- Ein Link zur Startseite und zur Suche.
- Derselbe Kopf- und Fußbereich wie im Rest der Website, damit sie sich nicht wie eine Sackgasse anfühlt.
- Nichts, was aus einem Pfad geladen wird, der ebenfalls kaputt sein könnte — betten Sie das CSS ein, wenn es geht.
Eine 404-Seite muss Status 404 zurückgeben, nicht 200. Eine weiche 404 — eine freundliche Seite mit Erfolgsstatus — lässt jede vertippte Adresse wie echten Inhalt aussehen, und Suchmaschinen indexieren sie alle.
curl -sSI https://yourdomain.com/no-such-page | head -1
# HTTP/2 404
Die 500-Seite ist ein anderer Fall
Sie erscheint, wenn die Anwendung kaputt ist — also darf sie nicht von der Anwendung abhängen. Halten Sie sie als statische Datei, die der Webserver allein ausliefern kann.