richtige Fehlerseite, ? header informationen ?
Kali
- php
wenn ich über die htacess eine Fehlerseite anlege kapiert es die Suchmaschine, wenn ich aber die Seiten über eine Datenbank zusammenstelle und die Seite nicht mehr da ist, wird eine interne Fehlerseite ausgegeben. Mein System erstrellt eine eigene html Seite in der steht, das es ein Fehler ist.
Kann ich dieser Fehlerseite auch irgendwie die Informationen mitgeben, die sie bekommen würde wenn sie über die htaccess erstellt wurde.
Kali
Meine Herren!
Kann ich dieser Fehlerseite auch irgendwie die Informationen mitgeben, die sie bekommen würde wenn sie über die htaccess erstellt wurde.
Ja. Diese Art von Fehlern werden auf der HTTP-Schicht übertragen. Es gibt verschiedene Codes für verschiedene Fehler und auch Nicht-Fehler. 200 ist der Code, für alles okay. 500 ist der Code für einen internen Server-Fehler. Und 404 heißt beispielsweise "Seite nicht gefunden". Eine Liste der potenziellen Werte, gibt es bei Wikipedia. Um diesen Zustand zu übermitteln, kannst du die PHP-Funktion header() nutzen:
header("HTTP/1.0 404 Not Found");
Du solltest unbedingt den richtigen Status-Code setzen, aber speziell für Suchmaschinen bietet es sich auch an, eine robots.txt-Datei anzulegen. Die Datei wird von Suchmaschinen ausgelesen, und dort kannst du genauer bestimmen, wie die Suchmaschine womit umgehen soll. Du kannst zum Beispiel auch für ganz normale Seiten, die mit Status-Code 200 ausgeliefert werden, sagen "Ey Suchmaschine, das ist nichts für dich".
Ok das habe ich jetzt hinbekommen.
Aber wenn ich meine domain mit www.domainname aufrufe
bekomme ich:
HTTP/1.1 200 OK
wenn ich sie ohne www aufrufe bekomme ich
HTTP/1.1 301 Moved Permanently
läuft da was falsch oder ist das ok
hi,
Kann ich dieser Fehlerseite auch irgendwie die Informationen mitgeben, die sie bekommen würde wenn sie über die htaccess erstellt wurde.
Meinst Du in .htaccess
ErrorDocument 404 /fehlerseite.html
^ hier hast Du die darzustellenden Infos selbst in der Hand
Den HTTP-Response-Header sendet in diesem Fall der Webserver, Status: 404 Not Found
Bei allen anderen nicht gefundenen Seiten, von denen der Webserver gar nichts weiß, kannst Du den Header selbst setzen.
Tipp: Regele Letzteres über eine Klasse mit dem Namen NotFound
MfG