Eigene Fehlerseiten Zurück zur Übersicht
Über den Autor
Da diese Frage im Forum öfters gestellt wird, möchte ich hier mal erklären, wie man seine eigene Fehlerseite für Error 404 und ähnliches erstellen kann.
1.: .htacces-Datei
Zuerst brauchst du eine .htaccess-Datei in dem Verzeichnis, für welches du die Fehlerseiten definieren möchtest. Diese Datei trägt einfach nur den Namen ".htaccess" (Es ist also eigentlich nur die Dateinamenerweiterung ohne Dateiname). In diese Datei kommt normaler Text rein, und zwar folgender:
Errordocument Fehlercode Pfad_zur_Fehlerdatei
Der Fehlercode bei einer Seite, die nicht gefunden wurde ist 404. Die Fehlerdatei kann irgendwo liegen, auch außerhalb dieses Ordners, sogar auf einem anderen Server und unter einer anderen Domain. Beispiel:
Errordocument 400 /errors/400.html
Errordocument 404 /errors/404.html
Errordocument 500 /errors/500.html
Wie du siehst, kannst du auch Fehlerseiten für mehrere Fehler angeben, direkt untereinander.
2.: Die Fehlerdatei
Jetzt brauchst du noch eine Datei, die angezeigt werden soll, wenn der entsprechende Fehler auftritt. Es ist egal, ob es eine html- oder phpdatei ist, wichtig ist nur, dass sie unter der angegebenen URL erreichbar ist.
Diese Datei sollte den Anwender darüber informieren, dass ein Fehler vorliegt und welcher, es sollten mögliche Gründe angegeben werden und vielleicht auch Lösungsvorschläge (in den meisten Fällen: warten). Die Datei kann allen möglichen Schnick-Schnack haben, es kann eine vollwertige Internetseite sein, sogar an das Design des Projekts angepasst.
Ein Beispiel:
Häufig gibt es auch einen Link, um dem Admin eine Email zu schreiben. Wenn man dieser Email einen Text vorgeben möchte und dem Admin mitteilen möchte, auf welcher Seite der Fehler aufgetreten ist, kann man in PHP die Servervariable $_SERVER["REQUEST_URI"] benutzen, welche die aufgerufene URL speichert. Beispiel für solch einen Link:
Wenn du dies für eine Fehlfunktion des Servers hältst, kontaktiere bitte den Administrator mit einer E-Mail an <a href="mailto:email.addresse@des-webmasters.de?subject=Error 404&body=Auf der Seite <?php echo $_SERVER[">email.addresse@des-webmasters.de</a>.
Dieser Link verschickt per JavaScript eine Email und gibt den Betreff und den Inhalt vor, falls der Anwender nichts ändert. Diese Variante, Emails zu verschicken, hat gewisse Nachteile (JavaScript muss eingeschaltet sein, ein Email-Programm muss installiert und richtig konfiguriert sein, ... - nicht jeder Anweder entspricht diesen Vorraussetzungen), aber es ist in diesem Fall die beste Möglichkeit. Du könntest auch per PHP automatisch eine Email verschicken, ohne den Anwender zu fragen.
Sollte unter der URL, die in der .htaccess-Datei angegeben wurde, keine Datei gefunden werden, wird eine Standardfehlerseite des Servers angezeigt.
Weitere Fehlercodes findest du unter .