Custom 404 & MaintenanceDocs

Documentation Custom 404 & Maintenance

Les étapes d'installation et une référence complète de chaque réglage, avec des exemples concrets — le même niveau de détail que celui utilisé par notre support pour aider les clients.

Afficher en Markdown

Avant / après

Même boutique, même URL : faites glisser la poignée pour comparer la page standard de Magento avec celle générée par le module.

Page 404

Page 404 personnalisée avec le logo de la boutique, grand chiffre 404, titre « Page not found », champ de recherche et bouton de retour à l’accueil Page 404 standard du thème Hyvä avec en-tête, pied de page et le texte générique « Whoops, our bad... »
Magento standard Avec le module

À gauche : la page 404 standard du thème (ici Hyvä), avec en-tête, pied de page et texte générique. À droite : la même URL avec le module — plein écran, logo de la boutique, grand 404, recherche dans le catalogue et bouton de retour à l’accueil.

Page de maintenance

Page de maintenance aux couleurs de la boutique : logo, titre « We’ll be back soon » et note « We will be back online at 14:00 (CET) » Page de maintenance standard de Magento : « Service Temporarily Unavailable » en noir sur fond blanc
Magento standard Avec le module

À gauche : la page de maintenance standard de Magento, « Service Temporarily Unavailable » en noir sur blanc. À droite : la page aux couleurs de la boutique avec logo, message et la note mise en avant « We will be back online at 14:00 (CET) », servie avec HTTP 503.

Installation

Prérequis

Magento 2.4.x. PHP 8.1–8.5. Compatible avec le thème par défaut Luma et avec le thème Hyvä. Nécessite le module gratuit codingrow/module-core, installé automatiquement. Aucune clé à saisir : le module s'active automatiquement sur votre domaine.

Étapes d'installation

  1. Demandez le module sur la page produit avec votre seul email : vous recevez par email les identifiants Composer (ils sont aussi dans votre espace client). Enregistrez-les depuis la racine de votre projet Magento :
    composer config http-basic.repo.codingrow.com <username> <password>
  2. composer config repositories.codingrow composer https://repo.codingrow.com
  3. composer require codingrow/module-custom-404-maintenance
  4. bin/magento module:enable Codingrow_Custom404Maintenance
  5. bin/magento setup:upgrade — en mode production, aussi setup:di:compile, setup:static-content:deploy et cache:flush.
  6. Il n'y a aucune clé à coller : le module s'active automatiquement sur votre domaine, passez directement à la configuration ci-dessous.

setup:upgrade installe aussi le skin de la page de maintenance dans pub/errors. S'il n'y parvient pas (permissions des fichiers), exécutez une fois bin/magento codingrow:c404m:deploy avec l'utilisateur propriétaire des fichiers Magento.

Configuration

Ouvrez Admin → Stores → Configuration → Codingrow Extensions → Custom 404 & Maintenance. Chaque champ peut être défini au niveau Default, Website et Store View : utilisez le sélecteur Scope en haut à gauche pour avoir des textes ou un design différents par langue.

L’en-tête du module en haut de la page de configuration, avec la version installée.
L’en-tête du module en haut de la page de configuration, avec la version installée.
Groupe License : statut Active et champ License Key vide — le module est gratuit, aucune clé n’est nécessaire.
Groupe License : statut Active et champ License Key vide — le module est gratuit, aucune clé n’est nécessaire.
RéglageRôleRemarques
404 Page
Enable custom 404 pageRemplace la page 404 de Magento.Oui/Non.
Show large "404" numberGrand chiffre coloré au-dessus du titre.Utilise la couleur d'accent.
Title / MessageLes textes de la page.Vide = texte par défaut traduit. HTML de base accepté dans le message (b, strong, i, em, a, br, p, ul, ol, li, span).
Show search boxRecherche dans le catalogue de la boutique.
"Back to home" button labelTexte du bouton.Vide = texte par défaut.
Maintenance Page
Installation statusIndique si le skin est installé dans pub/errors.Doit afficher Installed (voir Page de maintenance).
Enable custom maintenance pageAffiche votre page pendant la maintenance.Oui/Non par store view.
Title / MessageLes textes de la page.Comme pour la page 404.
Highlighted noteCourte note dans la couleur d'accent.Par ex. "De retour à 14 h".
Auto-reload page every (seconds)Recharge automatiquement la page du visiteur.0 = jamais ; 60 = chaque minute.
Design
Logo / Logo max widthLogo de la boutique, logo personnalisé ou aucun.Logo de la boutique = celui défini dans Content → Design → Configuration.
BackgroundCouleur unie, dégradé de deux couleurs ou image plein écran.Assombrissement de l'image de 0 à 90 %.
Content boxAucun, clair ou sombre.
Font / Title size / AlignmentTypographie des deux pages.
Couleurs du texte, d'accent et du texte des boutonsCouleurs, chacune avec sélecteur de couleur.Accent = chiffre 404, liens, boutons, note.

Désinstallation

Restaurez la page de maintenance standard de Magento avant de supprimer le module :

bin/magento codingrow:c404m:deploy --uninstall
composer remove codingrow/module-custom-404-maintenance
bin/magento setup:upgrade

Si vous supprimez le module sans --uninstall, la page de maintenance continue d'afficher la dernière version générée jusqu'à la suppression du skin. Pour revenir simplement aux pages standard sans désinstaller, réglez Enable custom 404 page et/ou Enable custom maintenance page sur No.

Guide d'utilisation

Page 404

Lorsqu'une adresse n'existe pas, au lieu de la page CMS « 404 Not Found », la boutique affiche une page plein écran avec le logo, un grand « 404 » facultatif, le titre, le message, un champ de recherche facultatif et un bouton « Retour à l'accueil ». La réponse conserve le statut HTTP 404, porte noindex et n'est jamais mise en cache : les moteurs de recherche ne l'indexent pas.

Les fichiers statiques ne sont pas concernés. Les 404 d'images, de CSS ou de JS inexistants sont gérées par le serveur web, pas par Magento : elles gardent la réponse du serveur.
Le groupe 404 Page (Not Found) : activation, grand chiffre « 404 », titre, message, champ de recherche et libellé du bouton « Back to home ». Les champs vides utilisent les textes par défaut traduits.
Le groupe 404 Page (Not Found) : activation, grand chiffre « 404 », titre, message, champ de recherche et libellé du bouton « Back to home ». Les champs vides utilisent les textes par défaut traduits.
La page 404 obtenue sur ordinateur : logo, 404, titre, message, champ de recherche et bouton de retour à l’accueil.
La page 404 obtenue sur ordinateur : logo, 404, titre, message, champ de recherche et bouton de retour à l’accueil.
La même page 404 sur smartphone.
La même page 404 sur smartphone.

Page de maintenance

Pendant la maintenance (bin/magento maintenance:enable), Magento ne tourne pas et c'est pub/errors/503.php qui répond. Le module :

  1. installe un skin dans pub/errors/codingrow_c404m/ et l'active dans pub/errors/local.xml (un local.xml existant est sauvegardé dans local.xml.codingrow_c404m.bak) ;
  2. pré-génère le HTML de la page pour chaque store view ;
  3. pendant la maintenance, choisit la store view de la requête (MAGE_RUN_CODE du serveur web → domaine/chemin → cookie de la boutique → langue du navigateur → boutique par défaut) et sert sa page avec HTTP 503 et Retry-After. Si la page n'est pas activée pour cette store view, la page standard de Magento est affichée.

Le HTML est régénéré automatiquement lorsque vous enregistrez la section, lorsque le logo change dans Content → Design → Configuration et à chaque maintenance:enable. Les IP exclues avec --ip continuent de voir la boutique.

Le statut d'installation indique « Not installed yet » ? Le serveur web ne peut pas écrire dans pub/errors (normal et sûr sur les serveurs sécurisés). Exécutez une fois bin/magento codingrow:c404m:deploy avec l'utilisateur propriétaire des fichiers Magento, puis rechargez la page de configuration : elle doit indiquer Installed.
Le groupe Maintenance Page : Installation status Installed avec la date de la dernière génération de la page, activation, titre, message, note mise en avant et rechargement automatique.
Le groupe Maintenance Page : Installation status Installed avec la date de la dernière génération de la page, activation, titre, message, note mise en avant et rechargement automatique.
La page de maintenance pendant bin/magento maintenance:enable, avec la note mise en avant « We will be back online at 14:00 (CET) ».
La page de maintenance pendant bin/magento maintenance:enable, avec la note mise en avant « We will be back online at 14:00 (CET) ».
La même page de maintenance sur smartphone.
La même page de maintenance sur smartphone.

Design

Le design s'applique aux deux pages : logo (logo de la boutique, logo personnalisé — jpg, png, gif, svg, webp — ou aucun) avec largeur maximale ; arrière-plan en couleur unie, dégradé de deux couleurs ou image plein écran avec assombrissement de 0 à 90 % ; encadré du contenu aucun, clair ou sombre ; police, taille du titre et alignement ; couleur du texte, couleur d'accent (chiffre 404, liens, boutons, note) et couleur du texte des boutons, chacune avec sélecteur de couleur. La page est en HTML/CSS autonome et n'utilise pas le thème : elle est identique sur Hyvä et Luma.

Le groupe Design (both pages) avec un fond en dégradé : logo et largeur maximale du logo, couleurs de fond et du dégradé, encadré, police, taille du titre, alignement, couleurs du texte, d’accent et du texte des boutons.
Le groupe Design (both pages) avec un fond en dégradé : logo et largeur maximale du logo, couleurs de fond et du dégradé, encadré, police, taille du titre, alignement, couleurs du texte, d’accent et du texte des boutons.
Background réglé sur Image : miniature de l’image importée, option Delete Image et Image darkening (%), ici 15.
Background réglé sur Image : miniature de l’image importée, option Delete Image et Image darkening (%), ici 15.
Résultat avec image de fond, assombrissement de 15 %, encadré clair et couleur d’accent bleue.
Résultat avec image de fond, assombrissement de 15 %, encadré clair et couleur d’accent bleue.
Une autre combinaison : sans encadré, police serif, alignement à gauche et couleur d’accent terracotta.
Une autre combinaison : sans encadré, police serif, alignement à gauche et couleur d’accent terracotta.

Aperçu en direct

Le groupe Live Preview affiche la page 404 ou la page de maintenance, en Desktop ou Mobile, mise à jour pendant que vous modifiez les champs et avec le scope sélectionné — avant d'enregistrer. Les images tout juste téléversées (logo personnalisé, image d'arrière-plan) apparaissent dans l'aperçu après l'enregistrement.

Aperçu en direct avec des modifications non enregistrées : fond sombre, accent violet et le titre personnalisé « Oops! This page took a day off ».
Aperçu en direct avec des modifications non enregistrées : fond sombre, accent violet et le titre personnalisé « Oops! This page took a day off ».
Les onglets 404 page / Maintenance page et Desktop / Mobile : ici la page 404 en Desktop.
Les onglets 404 page / Maintenance page et Desktop / Mobile : ici la page 404 en Desktop.
La page de maintenance dans l’onglet Mobile.
La page de maintenance dans l’onglet Mobile.
Après l’enregistrement, l’image de fond importée apparaît aussi dans l’aperçu.
Après l’enregistrement, l’image de fond importée apparaît aussi dans l’aperçu.
Aperçu de la page de maintenance avec la même image de fond.
Aperçu de la page de maintenance avec la même image de fond.

Commande CLI

bin/magento codingrow:c404m:deploy installe ou met à jour le skin de maintenance dans pub/errors et régénère les pages de toutes les store views. Elle n'est nécessaire que si le serveur web ne peut pas écrire dans pub/errors ; les fichiers du skin sont créés avec les permissions 644/755. --uninstall restaure local.xml et supprime le skin, ce qui rétablit la page de maintenance standard de Magento.

codingrow:c404m:deploy régénère la page pour les store views ; après maintenance:enable les visiteurs voient la page personnalisée (HTTP 503) ; --uninstall rétablit la page standard de Magento avant de supprimer le module.
codingrow:c404m:deploy régénère la page pour les store views ; après maintenance:enable les visiteurs voient la page personnalisée (HTTP 503) ; --uninstall rétablit la page standard de Magento avant de supprimer le module.

Dépannage

  • Je vois toujours l'ancienne page 404 : vérifiez que Enable custom 404 page est sur Yes dans le scope de la store view consultée, videz le cache (System → Cache Management) et testez une adresse qui n'existe vraiment pas.
  • Pendant la maintenance, je vois la page standard de Magento : Installation status doit être Installed, la page doit être activée pour cette store view et votre IP ne doit pas être exclue avec --ip. Exécutez ensuite bin/magento codingrow:c404m:deploy.
  • Mauvaise langue pendant la maintenance : définissez les textes dans le scope de la bonne store view ; si plusieurs store views partagent la même adresse, le cookie de la boutique puis la langue du navigateur décident. Exécutez ensuite bin/magento codingrow:c404m:deploy.
  • Le logo ne s'affiche pas : avec Store logo, il provient de Content → Design → Configuration → Header → Logo Image (ou du logo du thème) ; choisissez Custom logo pour en téléverser un et augmentez Logo max width s'il paraît trop petit.
  • L'image d'arrière-plan n'apparaît pas dans l'aperçu : les images téléversées apparaissent après l'enregistrement ; vérifiez que Background est réglé sur Image.

Licence

Custom 404 & Maintenance est gratuit et aucune clé n'est à saisir : une fois installé, le module s'active automatiquement sur votre domaine. Il effectue une légère vérification en ligne auprès de codingrow.com, en envoyant uniquement le domaine de la boutique, le produit et la version installée (aucune donnée sur vos clients), et mémorise la dernière réponse : un problème réseau passager ne le désactive donc pas. Le formulaire de la page produit sert uniquement à vous envoyer les identifiants du dépôt Composer de Codingrow, qui permettent de télécharger le module et ses mises à jour.

Si le module devenait un jour payant : les domaines qui l'ont déjà activé restent gratuits, pour toujours, sur toutes les versions publiées jusqu'à cette date — sans changement de domaine ni demande au support. Le journal de Magento indique la dernière version installable gratuitement ; les versions suivantes nécessiteraient une licence.