Zur Navigation

Falsche URLS auf Fehlerseite leiten

1 Horst_Braun

Hallo,

mein CMS System arbeitet mit sprechenden URLs, welche auf .html enden. Soweit ist das super. z.B. ww.domain.com/abc.html

Wenn ein Buchstabendreher rein kommt also www.domain.com/acb.html dann findet das System keinen Inhalt und man kommt auf der Startseite raus.

Also führen alle Links, welche mit .html enden und es keinen Inhalt dazu gibt auf die Startseite.

Geht sowas über die Regeln in der htacces zu regeln oder muss dass irgendwie über das System erfolgen.

MfG

PS: So wie es jetzt ist entsteht für google im Lauf der Zeit immer mehr "Duplicate Content". (aus jedem Schreibfehler und aus jedem Artikel den es nicht mehr gibt)

24.06.2011 14:31

2 Jörg Kruse

Da die rewriteten URLs keine realen Dateien referenzieren, kann nur das CMS selbst feststellen, ob eine URL auf einen vorhandenen Inhalt verweist. Statt bei fehlendem Inhalt auf die Startseite weiterzuleiten, sollte das CMS so angepasst / programmiert werden, dass es dann einen Status Code 404 oder 410 ausgibt.

24.06.2011 15:28 | geändert: 24.06.2011 15:29

3 Horst_Braun

genau das wollte ich ja. Konnte mir schon denken, dass dies nicht über die htaccess geht.

Danke

24.06.2011 17:47

4 Horst_Braun

Hallo,

das System funktioniert jetzt soweit, dass eine falsche URL auf eine Fehlerseite umgeleitet wird.

z.B.
http://www.patch-your-games.com/flefdsf.html

Wie kann ich denn google nun sagen, dass es sich um eine 404 handelt und nicht um eine normale Seite?

Muss ich das überhaupt noch?

06.07.2011 10:51

5 Jörg Kruse

Momentan leitest du mit einem Status Code 302 weiter auf die Fehlerseite - die Suchmaschinen könnten dies so interpretieren, dass der Inhalt von /flefdsf.html nun vorübergehend auf /error.php zu finden ist. Eine Weiterleitung ist allenfalls auch nur bei Status Codes angebracht, die mit einer 3 beginnen. Bei Status Codes, die mit einer 4 oder 5 beginnen, sollte nicht weitergeleitet werden, sondern die Fehlermeldung auf der Seite selbst ausgegeben werden.

In PHP kannst du HTTP Status Codes mit der Funktion header() ausgeben. Im Manual findet sich auf der betreffenden Seite auch ein Beispiel hierzu:

http://php.net/manual/de/function.header.php

06.07.2011 11:19

Beitrag schreiben (als Gast)

Die Antwort wird nach der Überprüfung durch einen Moderator freigeschaltet.





[BBCode-Hilfe]