Danach habe ich in der .htaccess-Datei auf der root-Ebene ganz unten eingefügt:
ErrorDocument 404 /Content-not-found-Error-404/
Trotzdem erscheint bei nicht existierenden URL immer wieder nur das nackte “Page not found” anstelle der 404-Seite.
Habe ich ein Brett vorm Kopf oder muss man da bei Oxid noch irgendwo was einstellen?
Perfekt! Die Funktion error_404_handler() in modules/functions.php packen, eigene Ziel-URL einstellen und fertig.
Vielen Dank!
Kleiner Nachtrag für die SEO: Damit Suchmaschinen auch wissen, dass die Zielseite nicht mehr existiert, sollte man vielleicht erst den 404 header schicken und darunter die Zielseite ohne eine Weiterleitung anzeigen.
(Siehe auch http://www.oxid-esales.com/forum/showthread.php?p=12498#32)
Andernfalls “sieht” der Crawler jede Menge Duplicate Content, da alle verschwundenen und falsch verlinkten Seiten nach dem Redirect denselben Inhalt haben.
Damit wird mir folgendes als Resultcode im Header ausgeliefert:
URL=http://www.domain.tld/test.html
Result code: 302 (Found / Moved Temporarily)
New location: http://www.domain.tld/index.php?cl=info&tpl=404.tpl
URL=http://www.domain.tld/index.php?cl=info&tpl=404.tpl
Result code: 404 (NotFound / Not Found)
Vorneweg: Ich hab nur die Schmalspurvariante gebaut; alle User kommen auf eine einzige 404-Seite, die ich im CMS für die Default-Sprache Englisch angelegt habe. Den Umweg über ein separates Template gehe ich also gar nicht.
Wenn am Ende bei Deiner Variante ein 404 dabei herauskommt, funktioniert das wahrscheinlich auch aus SEO-Sicht gut. (Ich weiss jetzt zwar nicht, wie der Google-Bot es bewertet, wenn er vor dem 404 nochmal umgeleitet wird…)
Auf Duplicate Content kommst Du nur, wenn es bei der Umleitung bleibt und kein 404 geschickt wird: Hunderte kaputter/veralteter Links verweisen dann (nach dem Redirect) auf eine einzige Sammelseite. Da sehe ich aber auch kein Problem bei Dir.
Ja, sehe ich auch so. Der Redicrect vor dem 404 ist zwar meiner Meinung nach überflüssig, stört aber auch nicht und Google was egal. Die alten Shopseiten mit PR bzw. gutem Index sollte man eh nicht auf den 404er laufen lassen sondern mit Redirect auf die neuen Seiten. Ich fand die “große” Lösung ideal, weil man hier auch wunderbar dem Besucher noch Infos liefer kann mit direkter Editierbarkeit im Content Manager. Ausserdem bleibt das Shopdesign durchgängig erhalten.
[QUOTE=Christian76;12527]weil man hier auch wunderbar dem Besucher noch Infos liefer kann mit direkter Editierbarkeit im Content Manager. Ausserdem bleibt das Shopdesign durchgängig erhalten.[/QUOTE]
Mmh. Für beides, also durchgängiges Shopdesign und Editierbarkeit im CMS, brauchst Du aber doch kein eigenes Template…?
Ich hab z.B. meine 404-Seite im CMS angelegt mit ein bißchen erklärendem Text, Link auf die Shopsuche und auf die Homepage. Dann bekam das Ganze eine fixe URL, die ich dann als Ziel in das 404-Skript eingebaut habe. Angezeigt wird die Seite dann natürlich im Standard-Template des Shops.
Gute Frage :-). Die Umsetzung ist bei mir schon einige Monate her. Ich werde mir mal die “kleine” Lösung anschauen und vergleichen. Wäre ja um einiges einfacher