Domaine canonique
Quand votre site est joignable à la fois sur www.example.com et example.com, les moteurs de recherche voient deux copies de chaque page. Chinaski résout ce problème en rendant votre réglage Site URL canonique et en générant une règle de redirection pour l'autre hôte automatiquement à chaque build. Cette page explique quoi configurer, ce qui est généré, et ce qui figure par ailleurs dans le fichier de redirects géré par le builder.
Choisir l'hôte canonique
Définissez Site URL dans Settings → General sur votre domaine préféré en entier, schéma compris, par ex. https://example.com ou https://www.example.com. L'hôte de ce réglage est l'hôte canonique.
À chaque build, le builder écrit un bloc généré dans _redirects au sommet de votre répertoire de sortie :
- Si l'hôte de votre Site URL commence par
www., le domaine nu (et tout ce qui se trouve dessous) est redirigé en 301 vers l'hôtewww.. - S'il ne commence pas par
www., l'hôtewww.est redirigé vers l'hôte nu.
La redirection est permanente (301) et transmet le chemin complet ; seule l'autorité change. Aucun autre domaine n'est touché. Si vous laissez Site URL vide, aucune redirection de domaine canonique n'est générée.
Deux choses à savoir :
- Le bloc généré est idempotent : chaque build retire tout bloc canonique précédent et le réécrit à neuf, si bien que des builds successifs ne dupliquent jamais de lignes.
- La règle utilise la syntaxe de redirection de la directive
redirde Caddy avec le marqueur force-externe!(https://www.example.com/* https://example.com/:splat 301!). Les exemples de deploy de Chinaski servent le contenu statiquement via Caddy, qui comprend ce format. Si vous publiez le répertoire de sortie sur un support qui attend une syntaxe de redirection différente, examinez ce fichier avant de le pointer vers un produit d'hébergement tiers.
Si vous basculez le Site URL du domaine nu vers www (ou l'inverse), le prochain rebuild regénère le bloc en conséquence ; aucune édition manuelle n'est nécessaire.
Autres redirects gérés par le builder dans le même fichier
Le fichier _redirects est partagé entre la règle de domaine canonique et les redirects que vous définissez dans l'admin :
- Redirects de slug: quand un slug de page ou de post est retiré ou délibérément redirigé, l'ancienne URL pointe vers la nouvelle avec le code HTTP que vous choisissez (301, 302 ou 307 ; 301 si non précisé). Les redirects ne se déclenchent que pour les URL qui ne correspondent plus à du contenu vivant : si l'ancien slug est toujours attaché à une page ou un post publié, la règle est ignorée afin qu'une URL vivante ne soit pas détournée.
- Redirects de changement de préfixe: changer le préfixe d'URL des posts redirige automatiquement les anciens chemins vers les nouveaux au prochain rebuild.
- Les règles de redirect sans motif (simples paires ancien-slug/nouveau-slug) sont des réécritures de chemin simples qui fonctionnent sur tous les types d'hébergement. Les redirects à motif (ceux qui utilisent
*et des placeholders de capture) sont délibérément ignorés quand le builder génère ces fichiers, car ils requièrent une syntaxe que le simple format de fichier ne peut pas exprimer ; les règles à motif doivent être implémentées directement dans la configuration de votre reverse proxy. - Un fichier compagnon
_redirects.caddyest également généré dans la syntaxe nativeredirde Caddy ; son commentaire d'en-tête vous indique de l'inclure dans le bloc site de votre Caddyfile si vous déployez avec Caddy.
Cohérence avec les balises canoniques
Le même Site URL pilote l'URL canonique de chaque page (<link rel="canonical"> et og:url), de sorte que le domaine vers lequel votre redirige les visiteurs et le nom canonique que vos pages déclarent concordent toujours. Si vous servez un site multilingue, les URL canoniques générées utilisent la base configurée de chaque langue.
Si le Site URL est laissé vide, aucun bloc de redirect canonique n'est écrit et les balises canoniques retombent en conséquence ; choisissez votre domaine avant la mise en ligne.