Gestion des 404
Quand votre site statique a des liens cassés, Chinaski peut journaliser chaque visite en 404, vous montrer les chemins les plus visités, et transformer ces chemins en redirections en quelques clics.
Où trouver les 404
Ouvrez Health dans l'admin et basculez vers l'onglet 404s. Il montre les 500 principaux chemins 404 journalisés classés par nombre de visites, pour que les liens cassés les plus fréquentés soient en haut.
Pour chaque chemin vous pouvez voir :
- le chemin qui a 404
- combien de fois il a été visité
- la dernière fois qu'il a été vu
- l'URL de provenance, si connue
Vous pouvez chercher les chemins par mot-clé et filtrer par période : tout, les 7, 30, ou 90 derniers jours. Les entrées du log 404 sont élaguées automatiquement après 90 jours, et vous pouvez vider tout le journal avec le bouton Clear Log (on vous demandera de confirmer).
Comment les 404 sont journalisés
Chinaski ne capture pas lui-même les 404 : le processeur de logs d'accès de votre hébergeur statique ou serveur web les enregistre en envoyant chaque miss en POST vers l'API de log 404 de Chinaski avec une clé d'API ayant la permission write. Les chemins sont enregistrés avec leur URL de provenance et leur user agent, et les visites répétées du même chemin sont comptées comme une seule entrée avec un compteur de visites incrémenté.
Créer des redirections depuis les 404
Deux manières d'agir sur la liste :
- Une à la fois: chaque ligne a un lien *Create redirect*. L'ancien chemin est prérempli avec les préfixes de langue et de blog déjà retirés, sur l'écran de création de redirection habituel.
- En masse: cochez les cases de plusieurs chemins, puis vous obtenez un tableau où, pour chaque chemin, vous remplissez le slug de destination, la langue (défaut "en"), et si la redirection est une page ou un post. Active est coché par défaut. Une redirection qui pointe vers elle-même est rejetée.
Comment se comportent les redirections
- Les redirections sont par langue : chaque redirection s'applique aux anciens chemins d'une seule langue.
- Une redirection ne prend effet que quand l'ancien chemin n'est pas une page ou un post actuellement publié. Si l'ancien slug est toujours en ligne, la redirection est sautée ; Chinaski vous en avertit quand vous la créez.
- Si la destination n'existe pas comme contenu actif ou cible d'une autre redirection, vous recevez un avertissement.
- Les redirections ne peuvent pas pointer vers elles-mêmes, et les boucles entre redirections sont refusées. Si votre destination est elle-même déjà redirigée, la chaîne est suivie jusqu'à sa vraie fin et votre redirection est créée en pointant directement là (« chaîne réduite »).
- Sur l'écran de création de redirection il y a un bouton Test Redirect : remplissez l'ancien slug, le nouveau slug, et la langue pour prévisualiser la chaîne de redirection, si elle boucle, où elle atterrit finalement, et si la destination existe.
Redirections de motif
L'option Pattern Redirect permet à une redirection de couvrir beaucoup de chemins : utilisez * à la fin de l'ancien slug pour correspondre à n'importe quel suffixe, et $1 dans le nouveau slug pour le substituer. Par exemple, ancien products/* → nouveau solutions/$1 envoie products/amplifier vers solutions/amplifier.
Les redirections de motif sont servies comme pages HTML de redirection (meta-refresh) ; elles ne sont pas incluses dans la configuration de redirection du serveur générée, où les redirections simples utilisent les codes HTTP 301, 302, ou 307. Le code HTTP que vous choisissez s'applique seulement à cette configuration serveur ; les pages de repli HTML fournies avec la sortie statique utilisent toujours meta-refresh.
Gérer les redirections en masse
Sur la page Redirects vous pouvez supprimer, activer, ou désactiver plusieurs redirections à la fois (ces actions déclenchent un build du site). Vous pouvez aussi les importer ou les exporter comme données :
- Export : téléchargez toutes les redirections comme
redirects.json, ordonnées par langue puis par ancien slug. - Import : téléversez un CSV avec les colonnes
old_slug,new_slug,language,type,active,notes,is_pattern,http_code. Les fichiers sont plafonnés à 4 Mio et 5 000 lignes par import. Le type est page par défaut, actif par défaut à on, et le code HTTP par défaut à 301. Seules les lettres minuscules, les chiffres, et-sont autorisés dans les slugs (plus*pour les slugs de motif anciens et$//pour les destinations) ; les lignes invalides sont sautées plutôt que de faire échouer tout l'import.
Ce qui se passe quand le 404 vient d'une page toujours en ligne
Rien : si un chemin appartient à une page ou un post publié, aucune redirection n'est générée pour lui, même s'il apparaît dans le log 404.