Eine Seite verschieben
redirectFrom im Frontmatter, in Routenregeln unter jedem Präfix übersetzt.
Eine verschobene Seite ist der eine tote Link, den sich eine Dokumentationsseite selbst erzeugt. Schreibe die alte URL in das Frontmatter der neuen Seite, und die Weiterleitung geht im selben Commit wie die Verschiebung raus.
Schritte
- Verschiebe die Datei und benenne sie um, wie du es vorhattest.
- Liste die alten Pfade auf der Seite selbst, ohne jedes Präfix:
--- title: Eine Seite ausliefern description: Wo eine duxt-Seite laufen kann. redirectFrom: - /getting-started/deploy - /deployment --- - Baue neu. Der Build macht aus jedem Eintrag Routenregeln — unter jedem Repository-, Versions- und Locale-Präfix, unter dem die Seite ausgeliefert wird.
- Prüfe eine davon, samt Präfix, in der gebauten Seite.
Warum das Frontmatter der richtige Ort ist
Die Lösung lag immer außerhalb der Seite: eine nginx-Regel, eine
Netlify-_redirects-Datei, eine Cloudflare-Liste — geschrieben von dem, der die
Seite ausliefert, und nie von dem, der die Seite verschoben hat. Und nur die
Ebene kann es einmal lösen, weil nur das aufgelöste Manifest weiß, welche
Präfixe es gibt; wer die Regeln von Hand schriebe, müsste das ganze Schema je
Seite neu herausfinden.
Das numerische Präfix wird aus der URL entfernt, 3.guides/ in 4.guides/
umzubenennen verschiebt also nichts. Nur der Teil nach dem Punkt ist die URL.
Checkliste
- Jeder alte Pfad ist aufgeführt, ohne Präfix geschrieben
- Der Build meldet keinen toten internen Link
- Eine alte URL leitet auch unter dem Versionspräfix weiter, nicht nur nackt
- Der Webserver-Konfiguration wurde nichts hinzugefügt