← Wissenskatalog
KonzepteAktualisiert 26. Juli 2026

Domain-Kanonisierung (www vs. Apex)

Wenn eine Seite unter www. und ohne www. gleichwertig mit Status 200 antwortet, existiert sie für Suchmaschinen doppelt: „Duplicate Content" und zersplitterte Ranking-Signale. Fix ist eine 301-Weiterleitung am Cloudflare-Edge auf eine Vorzugs-Variante, abgesichert durch ein self-referencing Canonical-Tag. Erste Umsetzung: Kluge-Studio auf Cloudflare Pages.

Das Problem

Aufgefallen über einen Seobility-Check der Live-Seite. Auf HTTP-Ebene mit curl geprüft (nicht im Browser, der normalisiert die Adressleiste nur kosmetisch und verschleiert das Problem):

https://www.kluge-studio.de/   -> HTTP 200   (KEINE Weiterleitung)
https://kluge-studio.de/       -> HTTP 200
http://kluge-studio.de/        -> 301 -> https://kluge-studio.de/
http://www.kluge-studio.de/    -> 301 -> https://www.kluge-studio.de/

http -> https griff also schon (SSL-Redirect), aber www und Apex lieferten beide 200, keine leitete auf die andere. Die Seite existierte damit unter zwei gleichwertigen Adressen.

Warum das schadet

  • Duplicate Content: Google sieht zwei URLs mit identischem Inhalt und muss selbst raten, welche die Hauptversion ist.
  • Zersplitterte Signale: Backlinks und Ranking-Signale verteilen sich auf zwei Hosts, statt sich auf einen zu bündeln. Beide Varianten ranken schwächer als eine gebündelte.
  • Verstärkt wurde es dadurch, dass kein Canonical-Tag gesetzt war, also auch kein zweites Signal, das die Hauptversion benannt hätte.

Die Vorzugs-Variante hier ist ohne www (Apex), weil og:url, sitemap.xml und die gesamte interne Verlinkung bereits auf kluge-studio.de zeigen. www muss also auf den Apex weiterleiten, nicht umgekehrt.

Der Fix: 301 am Cloudflare-Edge

Kein Code, sondern eine Redirect Rule im Cloudflare-Dashboard (Zone kluge-studio.de -> Rules -> Redirect Rules). Es gibt eine passende Vorlage „Redirect from WWW to root", die ohne Umbau passt:

  • Match: Wildcard-Pattern, Request-URL https://www.*
  • Then: Target-URL https://${1} (der Wildcard ${1} trägt Host-Rest + Pfad, strippt also nur das www. und baut die URL neu auf)
  • Status: 301 - Permanent Redirect (nicht 302, die Weiterleitung soll dauerhaft sein und Signale vererben)
  • Haken „Preserve query string" setzen — der Wildcard * fängt die Query nicht mit ab, ohne den Haken gingen ?...-Parameter verloren.

Warnung beim Deploy („This rule may not apply to your traffic / DNS configuration may not be proxying www") ist hier unkritisch: www lief nachweislich schon durch den Cloudflare-Proxy (es lieferte 200 mit der echten Seite), sonst käme dort gar nichts. Grund der Warnung: www hängt am Pages-Custom-Domain statt an einem sichtbaren, proxied DNS-Record, deshalb findet die Heuristik keinen expliziten Eintrag. „Ignore and deploy rule anyway" ist richtig; keinen neuen DNS-Record anlegen, der würde sich mit dem Pages-Setup beißen.

Verifiziert (curl, direkt nach Deploy)

www.kluge-studio.de/                       -> 301 -> kluge-studio.de/
www.kluge-studio.de/souveraen              -> 301 -> kluge-studio.de/souveraen         (Pfad erhalten)
www.kluge-studio.de/website?ref=test&a=1   -> 301 -> kluge-studio.de/website?ref=test&a=1  (Query erhalten)
kluge-studio.de/                           -> 200                                       (keine Schleife)

Der wichtige Gegencheck ist die letzte Zeile: der Apex muss weiter 200 liefern, sonst hätte man eine Redirect-Schleife gebaut.

Zweite Ebene: Canonical-Tag

Der Edge-Redirect fängt Besucher und Bots ab, bevor die falsche Variante überhaupt lädt. Das self-referencing Canonical-Tag (<link rel="canonical" href="https://kluge-studio.de/…">, pro Seite auf die eigene Apex-URL) ist die zweite, unabhängige Absicherung: Es benennt die Hauptversion auch dann, wenn eine Seite doch mal über einen abweichenden Parameter oder Host erreicht wird. Redirect + Canonical zusammen ist der saubere Zustand. In Nuxt global im <head> per useHead/useSeoMeta, damit es mit prerendert (siehe Crawlbarkeit-und-AIO).

Die Kurzfassung

Prüf jede öffentliche Domain einmal mit curl auf alle vier Varianten (http/https mal www/Apex). Genau eine darf 200 liefern, die anderen drei müssen per 301 dorthin zeigen. Der Browser lügt hier durch kosmetische URL-Normalisierung, curl nicht.

Verwandt

Crawlbarkeit-und-AIO · Cloudflare · Kluge-Studio · Nuxt-4 · 00-MOC