404 Seiten gegen alte Inhalte
Ich habe mich in letzter Zeit immer wieder mal selbst im Internet gesucht, in erster Linie um zu sehen ob rupek.net endlich xlkstyle.com überholt hat. Dabei ist mir aufgefallen, dass selbst google noch Inhalte listet, die seit langer langer Zeit nicht mehr hier sind. Ich werfe zwar regelmäßig einen Blick in die Logs, bin jedoch bisher davon ausgegangen, dass nur Spam-Bots diese URIs noch parat haben.
Konkret geht es darum, dass mein altes CMS die Inhalte wie folgt strukturiert hat:
WordPress erstellt richtige 404-Seiten, seit WP3 auch mit den korrekten Headern, für die meisten WP Benutzer sollte dies also nicht relevant sein. Was in meinem Fall aber passiert (und in vielen anderen Beispielen die von selbstgebastelten URIs wie ?var=arg1&var2=arg2…) ist, dass WP gar keine Chance hat dieses Problem zu erkennen. Wird eine meiner alten URIs aufgerufen so steht lediglich $_GET['rel'] bereit, für WP sicherlich kein Grund eine 404 Meldung anzuzeigen. Das Ergebnis ist die normale Startseite des Blogs, die von Suchmaschienen gerne indiziert wird.
Für mich sieht die Lösung wie folgt aus (vorerst nur als Skizze): In die header.php meines Themes (falls zu spät in die WP index.php) eine kurze Abfrage:
{
header(“HTTP/1.0 404 Not Found”);
// WP zu einer Info-Seite umleiten
}
Müsste reichen. Ich weiß so aus dem Stand nicht genau wann WP den ersten Content sendet, wichtig ist, dass der 404 Header davor gesendet wird.