Hi,
heute mal wieder etwas aus der beliebten Serie "wie helfe ich meinem SEO-abhängigen Kunden" ;-)
"Lobotomie - und schon ist Ruhe."
Nun haben wir z.B. ausgelaufene Produkte auf Wunsch des Kunden mit einem Status 301 auf eine statische Infoseite geführt ("gibt's nicht mehr, such dir was anderes aus"). Dies scheint von Google recht negativ bewertet worden zu sein (deutliches Absacken in den Ergebnissen...).
Ist ja auch nicht sonderlich nett - jemanden erst mal woanders hin schicken, nur um ihm dort zu sagen, "gibt's nicht mehr". Das gilt in Bezug auf den menschlichen Nutzer - der Suchmaschine wird das ja noch nicht mal mitgeteilt (wenn die Infoseite, wie ich wohl annehme, mit 200 OK ausgeliefert wird). Die hat jetzt also nur die Info, dass die Infos zum Produkt jetzt permanent unter einer anderen Adresse abrufbar sein sollen - und findet sie dort dann aber nicht mehr.
Zukünftig soll ein Status 404 für tatsächlich entfernte Produkte geschickt werden.
410 Gone soll besser wirken, wenn man "tote" Links auch wirklich aus den SuMa-Ergebnisseiten heraus bekommen will.
Diese kann ich jedoch nicht anhand des Status aus der Datenbank auslesen, da es ja auch "vorübergehend" deaktivierte Produkte gibt, die dann wieder einen anderen Status erhalten sollen. (Kann mir noch jemand folgen?)
Das sind doch dann zwei verschiedene Statii - durchaus unterscheidbar.
Btw., was soll denn mit letzteren nach aussen hin passieren - "normale" Produktseite ausgeben, mit der Info "gibt's erst zum x.y.2009 wieder", oder ...?
XTCommerce schmeißt bei nicht gefundenen Produkten (z.B. deaktivierten) auch nicht von selber einen 404er, sondern eine hübsche Suchseite, siehe z.B. in diesem Demoshop.
Wenn es die wenigstens mit einem 404/410 ausliefern würde, und nicht als 200 ...
Frage: Wie managt Ihr besonders "lebendige" Seiten, bei denen sich ständig etwas ändert, in Sachen Statusvergabe? Wir haben nach einem Umzug eine fette Liste in die httpconf geschrieben, um die redirects zu handhaben. Aber hier regelmäßig einzugreifen, um nach Bedarf etwas umzuleiten oder Status zu vergeben, kann es ja nun nicht sein. Wenn ich regelmäßig gelöschte Produkte habe: händisches Eintragen in die htaccess? Auch das finde ich recht hölzern zu handhaben. Dynamisch generierte htaccess - Kanonen auf Spatzen? Gesucht ist ein "Best practice" für derlei Seiten.
Dynamisch reagieren - ja. Aber nicht durch ständiges neu erstellen einer fetten .htaccess, die der Webserver bei jedem Request erst mal durchpflügen muss.
Hier passend zu reagieren, wäre Aufgabe der Scriptlogik.
Das gesuchte Produkt finde ich nicht in der Datenbank? 404
Das gesuchte Produkt ist zwar in der Datenbank, wird aber nicht mehr angeboten? 410
Wie auf die temporär "daktivierten" Produkte reagiert werden soll, wäre noch zu klären.
Kurz-/mittelfristig nicht lieferbar - würde m.E. die Ausgabe einer normalen Seite, die diese Info in Textform für den Nutzer transportiert, rechtfertigen - unter einem 200er Status. Normale Produktinfos auf der Seite wie sonst auch, dann kann ich mich als Kunde schon mal informieren.
Saisonabhängige Produkte, wie bspw. das Grillzubehör, das in den Wintermonaten nicht angeboten wird - da müsste man überlegen, ob man die wirklich aus dem Katalog rausnehmen will; und wenn ja wie - 410 mit revisit-after o.ä. kombinieren? K.A., wie eine SuMa darauf reagiert.
Vielleicht auch lieber weiterhin die "normale" Seite ausgeben, mit entsprechender Info an den Nutzer. Damit behält man wenigstens Links, die sich ein mal ihre Aufnahme in den SuMa-Katalog erkämpft haben.
MfG ChrisB
Light travels faster than sound - that's why most people appear bright until you hear them speak.