Zum Inhalt springen

Relaunch: alte URLs retten, ohne die Startseite zuzumüllen

Wie du die Alt-URL-Liste zusammenstellst, jede URL einzeln zuordnest und warum eine Sammelweiterleitung auf die Startseite schadet statt zu helfen.

Zuletzt geprüft:

Das Wichtigste

  • Die Alt-URL-Liste kommt aus drei Quellen: Zugriffslog, Search Console und ein Backlink-Export. Keine davon ist für sich vollständig.
  • Viele Alt-URLs auf eine einzige Zielseite umzuleiten wird als Soft-404 gewertet – die Alt-URL fliegt aus dem Index, ohne Relevanz weiterzugeben.
  • Ohne thematisch passendes Ziel ist ein 410 das ehrlichere und wirksamere Signal.
  • Nach dem Deploy die Ziele auszählen: Laufen auffällig viele Alt-URLs auf derselben Seite zusammen, ist das der Befund.

Bei einem Relaunch entsteht der Verlust selten durch das neue Design. Er entsteht dadurch, dass tausende gewachsene URLs auf einmal nicht mehr existieren – und die Weiterleitungen ungeprüft ausgeliefert werden.

Schritt 1: die vollständige Alt-URL-Liste

Keine einzelne Quelle reicht:

# aus dem Zugriffslog: alles, was in den letzten Monaten aufgerufen wurde
zcat access.log*.gz | awk '{print $7}' | sed 's/?.*//' | sort -u > urls-log.txt

# aus dem Internet Archive: auch längst vergessene Pfade
curl -s "http://web.archive.org/cdx/search/cdx?url=example.com*&fl=original&collapse=urlkey" \
  | sed 's|https\?://[^/]*||' | sort -u > urls-archiv.txt

# Search Console und Backlink-Export als CSV exportieren und ergänzen
cat urls-log.txt urls-archiv.txt urls-gsc.txt urls-backlinks.txt | sort -u > alt-urls.txt

Der Backlink-Export ist die wichtigste der vier Quellen. Er zeigt nicht nur, welche URLs existierten, sondern welche verlinkt sind – und genau die haben einen Wert, der bei einer falschen Zuordnung verlorengeht.

Schritt 2: jede URL einzeln zuordnen

Für jede Alt-URL gibt es drei mögliche Entscheidungen:

Entscheidungwann
Seite neu bauendie URL hat starke Links und einen Inhalt, den es weiter geben soll
301 auf ein passendes Zieles existiert eine Seite, die dasselbe Thema behandelt
410der Inhalt ist bewusst entfernt und hat kein Pendant

Was nicht dazugehört: eine Sammelregel, die alles Übrige auf die Startseite schickt.

Der Grund ist messbar. Google wertet eine Viele-auf-Eine-Weiterleitung als Hinweis darauf, dass es kein passendes Ziel gibt, behandelt sie wie eine Fehlerseite und nimmt die Alt-URL aus dem Index. Die Relevanz wird dabei nicht übertragen. Im Ergebnis verliert man beides: die Alt-URL und den Wert ihrer Links.

Für die Zuordnung lohnt sich eine Tabelle, die man auch später noch lesen kann:

alt_url,links,ref_domains,entscheidung,ziel,begruendung
/doku_htaccess.htm,1103,1,301,/apache/htaccess/,gleiche Doku fachlich fortgeführt
/gaestebuch.htm,455,1,410,,privater Inhalt ohne Pendant
/produkte/schuh-12.htm,3,2,301,/shop/laufschuhe/,Produkt in Kategorie aufgegangen

Die Spalten links und ref_domains helfen bei der Priorisierung: Eine URL mit vielen verweisenden Domains verdient eine eigene Zielseite, eine mit einem einzigen nofollow-Link nicht.

Schritt 3: nichtssagende URLs einzeln nachsehen

seite12.htm oder index.php?id=87 sagen nichts über ihren Inhalt. Der Reflex, sie pauschal auf 410 zu werfen, ist falsch – dahinter können echte, thematisch passende Seiten mit Forenlinks stecken.

Das Internet Archive beantwortet die Frage in Sekunden:

https://web.archive.org/web/2015/http://example.com/seite12.htm

Der Aufwand lohnt bei jeder URL mit mehr als einer verweisenden Domain.

Schritt 4: vor dem Deploy testen

Regeln gegen die echte Alt-URL-Liste prüfen, nicht gegen ausgedachte Beispiele. Lokal genügt ein Apache-Container mit derselben .htaccess:

while read -r pfad; do
  code=$(curl -sIo /dev/null -w '%{http_code}' "http://localhost:8080$pfad")
  ziel=$(curl -sIo /dev/null -w '%{redirect_url}' "http://localhost:8080$pfad")
  printf '%s\t%s\t%s\n' "$pfad" "$code" "$ziel"
done < alt-urls.txt > ergebnis.tsv

Schritt 5: nach dem Deploy die Ziele auszählen

Der Test, der die Sammelweiterleitung sichtbar macht:

awk -F'\t' '$2 ~ /^30/ {print $3}' ergebnis.tsv | sort | uniq -c | sort -rn | head -20

Steht in der ersten Zeile die Startseite mit einer dreistelligen Zahl, ist genau das der Befund. Eine gesunde Verteilung sieht anders aus: viele verschiedene Ziele, jedes mit einer überschaubaren Zahl von Alt-URLs, und die grösseren Gruppen erklären sich durch ein gemeinsames Thema.

Und die Gegenprobe:

# was ist ins 404 gelaufen, obwohl es Links hatte?
awk -F'\t' '$2 == "404"' ergebnis.tsv

Jede Zeile hier ist eine Entscheidung, die noch fehlt.

Die Syntax der Regeln selbst steht in der Anleitung zu 301-Weiterleitungen.

Häufige Fragen

Woher bekomme ich die Liste der alten URLs?

Aus dem Zugriffslog der letzten Monate, aus der Search Console und aus einem Backlink-Export. Ergänzend liefert das Internet Archive Pfade, die längst nicht mehr aufgerufen werden, aber noch verlinkt sind.

Ist eine Weiterleitung auf die Startseite wirklich schädlich?

Bei einzelnen URLs nicht. Problematisch wird das Muster: Wenn hunderte Alt-URLs alle auf derselben Seite landen, wertet Google das als Hinweis, dass es kein passendes Ziel gibt, behandelt die Weiterleitung wie eine Fehlerseite und entfernt die Alt-URL aus dem Index.

Wann ist 410 besser als 404?

Wenn du sicher weisst, dass der Inhalt bewusst und dauerhaft entfernt wurde. Der 410 signalisiert genau das und führt schneller zur Entfernung aus dem Index. Ein 404 hält die Möglichkeit offen, dass die Seite zurückkommt.