Lorsqu'un site Web est en ligne, il arrivera tôt ou tard un moment où le site devra être mis hors ligne pour y effectuer de la maintenance. L'exemple classique survient lorsque vous avez modifié une partie importante du code et de la structure de la base de données et que vous voulez éviter que le site ne plante pendant la copie des fichiers et l'exécution du script SQL de mise à jour.
Généralement, il est possible de prévoir le moment où l'opération de maintenance aura lieu. Il faut dès que possible indiquer aux usagers la date et l'heure à laquelle le site ne sera plus disponible ainsi que la durée de l'opération.
Ceci peut être effectué à l'aide d'un message affiché dans un bandeau au début de chacune des pages. Une technique intéressante consiste à ajouter à la base de données une table contenant les messages à afficher avec, pour chacun, un champ indiquant s'ils sont actifs ou non. Dans le gabarit de base, si un ou plusieurs messages sont actifs, une division se chargera d'afficher le texte des messages actifs.
Pour placer un site en mode maintenance, vous devez exécuter la commande suivante :
php artisan down
Ceci aura pour effet de créer un fichier nommé « down », sans extension, dans le dossier storage\framework.
{
"time": 1555519647,
"message": null,
"retry": null,
"allowed": []
}
Pour rendre le site à nouveau disponible :
php artisan up
Ces commandes devront être exécutées sur le serveur qui héberge votre site Web.
Si vous n'avez pas accès à une console sur votre serveur, ce qui est souvent le cas pour les hébergements partagés, vous devez simplement créer un fichier storage\framework\down vide (le fichier down porte un nom sans extension).
La suppression de ce fichier rendra le site à nouveau disponible.
Dès qu'un site est en mode maintenance, l'usager qui tente d'accéder au site doit voir une page conviviale plutôt qu'un message d'erreur.
Lorsque vos mettez votre site en mode maintenance, le navigateur recevra un code d'état HTTP 503 (service non accessible de façon temporaire). Laravel tentera automatiquement d'afficher la vue errors.503 lorsqu'un code 503 est rencontré.
Par défaut, voici ce qui sera affiché au lieu de votre site Web :
Vous pouvez éditer le fichier errors\503.blade.php à votre convenance.
La vue 503 doit :
Voici un exemple de message approprié : « Notre équipe technique effectue présentement un entretien du site Web. Le site sera de nouveau disponible au plus tard le mardi 16 juin à 13h. Merci de votre compréhension. ».
« Configuration - Maintenance Mode ». Laravel. https://laravel.com/docs/master/configuration#maintenance-mode
« Maintenance Mode and Whitelists in Laravel 5 ». Toni Peric. https://toniperic.com/2015/12/01/maintenance-mode-and-whitelists-in-laravel-5
▼Publicité