Options du mode de maintenance pour la mise à niveau
Cette rubrique explique comment créer une page de maintenance personnalisée à afficher pour les utilisateurs pendant la mise à niveau de votre application Magento. La création d’une page personnalisée est facultative, mais recommandée, car votre site est accessible pendant une partie de la mise à niveau.
La création d’une page personnalisée vers laquelle rediriger les utilisateurs empêche tout accès au site et informe également vos utilisateurs que le site est en cours de maintenance.
root. Les pages de maintenance personnalisées ne peuvent pas être définies en mode développeur.Création de la page de maintenance personnalisée
Pour créer une page de maintenance et la rediriger vers celle-ci, commencez par créer une page de maintenance nommée :
- Apache :
<web server docroot>/maintenance.html - nginx :
<magento_root>/maintenance.html
Ajoutez le contenu suivant :
<!DOCTYPE html>
<html>
<head>
<title>Temporarily Offline</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
h1
{ font-size: 50px; }
body
{ text-align:center; font: 20px Helvetica, sans-serif; color: #333; }
</style>
</head>
<body>
# Temporarily offline
<p>We're down for a short time to perform maintenance on our site to give you the best possible experience. Check back soon!</p>
</body>
</html>
Page de maintenance personnalisée pour Apache
Cette section explique comment créer une page de maintenance personnalisée et rediriger le trafic vers celle-ci.
L’exemple de cette section montre comment modifier les fichiers suivants, ce qui est une façon de configurer votre page de maintenance :
- Apache 2.4 :
/etc/apache2/sites-available/000-default.conf - Apache 2.2 :
/etc/apache2/sites-available/default(Ubuntu),/etc/httpd/conf/httpd.conf(CentOS)
Pour rediriger le trafic vers une page de maintenance personnalisée :
-
Mettez à jour votre configuration Apache pour effectuer les opérations suivantes :
- Rediriger tout le trafic vers la page de maintenance
- Placez sur la liste autorisée certaines adresses IP afin qu’un administrateur puisse mettre à niveau le logiciel Magento.
L’exemple suivant place sur la liste autorisée 192.0.2.110.
Ajoutez ce qui suit à la fin de votre fichier de configuration Apache :
code language-none RewriteEngine On RewriteCond %{REMOTE_ADDR} !^192\.0\.2\.110 RewriteCond %{DOCUMENT_ROOT}/maintenance.html -f RewriteCond %{DOCUMENT_ROOT}/maintenance.enable -f RewriteCond %{SCRIPT_FILENAME} !maintenance.html RewriteRule ^.*$ /maintenance.html [R=503,L] ErrorDocument 503 /maintenance.html Header Set Cache-Control "max-age=0, no-store" -
Redémarrez Apache :
- CentOS :
service httpd restart - Ubuntu :
service apache2 restart
- CentOS :
-
Saisissez la commande suivante :
code language-bash touch <web server docroot>/maintenance.enable -
Testez votre site pour vous assurer qu’il fonctionne correctement.
-
Une fois la mise à niveau terminée, supprimez
maintenance.enable.
Page de maintenance personnalisée pour Nginx
Cette section explique comment créer une page de maintenance personnalisée et rediriger le trafic vers celle-ci.
Pour rediriger le trafic vers une page de maintenance personnalisée :
-
Utilisez un éditeur de texte pour ouvrir le fichier de configuration nginx contenant votre bloc de serveur.
-
Ajoutez les éléments suivants au bloc de serveur (
serverest affiché par souci de clarté uniquement ; n’ajoutez pas de second bloc de serveur).Placer sur la liste autorisée Ce qui suit les adresses IP 192.0.2.110 et 192.0.2.115 sur un système sur lequel Magento est installé dans
/var/www/html/magento2:code language-conf server { listen 80; set $MAGE_ROOT /var/www/html/magento2; set $maintenance off; if (-f $MAGE_ROOT/maintenance.enable) { set $maintenance on; } if ($remote_addr ~ (192.0.2.110|192.0.2.115)) { set $maintenance off; } if ($maintenance = on) { return 503; } location /maintenance { } error_page 503 @maintenance; location @maintenance { root $MAGE_ROOT; rewrite ^(.*)$ /maintenance.html break; } include /var/www/html/magento2/nginx.conf; } -
Saisissez la commande suivante :
code language-bash touch <magento_root>/maintenance.enable -
Rechargez la configuration nginx :
code language-bash service nginx reload -
Testez votre site pour vous assurer qu’il fonctionne correctement.
-
Une fois la mise à niveau terminée, supprimez ou renommez
maintenance.enable -
Rechargez la configuration nginx :
code language-bash service nginx reload