‹ Alle Artikel

Wenn das Canonical auf eine Weiterleitung zeigt

Dieselbe Seite zweimal in der Search Console. Das Canonical war gesetzt — es zeigte nur auf eine Adresse, die es so nicht gibt. Zwei Konfigurationen, die sich widersprachen.

In der Search Console tauchte dieselbe Seite zweimal auf: einmal mit Schrägstrich am Ende, einmal ohne. Zwei Zeilen, zwei getrennte Statistiken, dieselbe Seite.

Das rel="canonical" war gesetzt. Genau dafür ist es da — Google mitzuteilen, welche Adresse die maßgebliche ist. Es zeigte nur auf eine URL, die es so nicht gibt.

Zwei Konfigurationen, die sich widersprachen

Die Auslieferung war auf Adressen ohne Schrägstrich eingestellt:

// vercel.json
"trailingSlash": false

Der Seitengenerator hatte dazu keine Angabe und blieb bei seinem Standard. Also baute er Canonicals mit Schrägstrich — auf Adressen, die die Auslieferung per 308 sofort weiterleitet.

curl -sI https://example.de/technik/ | grep -i location
→ location: /technik

Warum das schlimmer ist als gar kein Canonical

Google folgt der Weiterleitung und landet auf /technik. Dort steht ein Canonical, das wieder auf /technik/ zeigt. Ein Kreis.

In so einem Fall ignoriert Google die Angabe und entscheidet selbst, welche Adresse zählt — also genau die Kontrolle, die man mit dem Tag behalten wollte. Dazu kommt verschenktes Crawl-Budget: Jeder Abruf einer kanonischen Adresse kostet eine Weiterleitung.

Der Fehler fällt nicht auf

Nichts daran ist kaputt. Alle Seiten liefern 200, die Weiterleitungen funktionieren, die Canonicals sind syntaktisch korrekt und zeigen auf die eigene Domain. Jede oberflächliche Prüfung meldet grün.

Sichtbar wird es erst, wenn man das Canonical nicht liest, sondern aufruft:

ziel=$(curl -sL https://example.de/technik |
       grep -o 'rel="canonical" href="[^"]*"' |
       grep -o 'https://[^"]*')
curl -s -o /dev/null -w '%{http_code}' "$ziel"
→ 308

Alles außer 200 ist ein Fehler. Ein Canonical muss auf eine Seite zeigen, die es wirklich gibt.

Auch die Sitemap war betroffen

Derselbe Generator baut die Sitemap. Sie listete durchweg Adressen mit Schrägstrich — 21 Einträge, die alle weiterleiten. Eine Sitemap ist eine Empfehlungsliste an Google; eine Liste aus Weiterleitungen ist eine schlechte Empfehlung.

Was wir daraus mitnehmen

Wenn zwei Systeme dieselbe Frage beantworten — hier: Gehört ein Schrägstrich ans Ende? — müssen beide dieselbe Antwort geben. Steht die Einstellung nur in einem von beiden, entscheidet das andere still nach seinem Standard.

Und: Eine Einstellung zu setzen ist kein Beleg. Wir haben nach dem Build geprüft, was tatsächlich in den Dateien steht — nicht, was in der Konfiguration steht.

Projekt im Kopf?

Wenn Sie an ähnlichen Problemen sitzen — wir bauen Software, die solche Fallen umgeht.

✉ contact@otaku-development.de