Nehmen wir an die URL für einige Produkte in einem Online-Shop hat sich geändert.
Hm. Da kommt es sehr auf den Grund an.
-
Nehmen wir mal an, das Produkt sei eine FooBox 3963 gewesen. Die gibt es nicht mehr. aber eine FooBox 4963 als Nachfolger. Dann dürfte es wohl die beste Idee sein, auf einer Art "Landing-Page" den Preis und die Bestellmöglichkeit zu entfernen, die Nicht(mehr)verfügbarkeit anzuzeigen und mit Link auf das neue Modell hinzuweisen. Ob das mit Statuscode 200 oder 404 erfolgt, ist anhand der Frage zu entscheiden, ob man künftig bei einer Suche nach "FooBox 3963" gefunden werden will. Aber vielleicht hat man mit dem Angebot auch Dokumente, z.B. die Bedienungsanleitung verlinkt. Der Status 200 und die weitere Verfügbarkeit der Bedienungsanleitung für das nicht nicht mehr verfügbare Modell können den Kundendienst entlasten. Gute Bewertungen des alten Modells können zu einem Kauf des noch nicht bewerteten Nachfolgers führen. Ich plädiere in diesem Fall für Statuscode 200.
-
Nehmen wir mal an, das Produkt sei auf Grund eines Erfassungsfehlers falsch benannt gewesen, was sich in der URL niederschlägt. Empfohlene Aktion: Weiterleitung mit Statuscode 301 - Moved Permanently.
-
Nehmen wir mal an das Produkt sei auf Grund einer Erweiterung der Sprachen (z.B. spanisch sei neu im Webshop) auf einer neuen, weiteren Webseite erreichbar. Empfohlene Aktion: Feststellung der im Browser voreingestellten Sprache, Testen auf Cookie oder Session mit aktiv gewählter Sprache: Wenn positiv Anzeige in dieser (Statuscode 200) sonst Weiterleitung mit Statuscode 301 - Moved Permanently. Auf gesetztes Language-Attribut achten. Auch Status 300 (multible choises) ist dann (für eine Auswahlmöglichkeit) denkbar.
-
Nehmen wir an, die Verzeichnisstruktur hat sich grundlegend geändert, z.B. durch die Einführung einer neuen oder Verzicht auf eine Kategororienebene. Empfohlene Aktion: Weiterleitung mit Statuscode 301 - Moved Permanently.
…
Einen 404er zu senden ist also "technisch nicht falsch" aber "regelmäßig eher ungünstig".