Android

Configurer magento 2 pour utiliser le vernis sur centos 7

How to install #magento centos 7

How to install #magento centos 7

Table des matières:

Anonim

La vitesse de la page ou le temps de chargement est crucial pour le succès de votre boutique en ligne. Le temps de chargement est le temps total nécessaire au chargement du contenu d'une page spécifique. Plus le temps de chargement est long, plus le taux de conversion est faible. C'est également l'un des facteurs les plus importants que Google considère pour déterminer le classement des moteurs de recherche.

Dans le premier article, nous avons installé Magento 2 sur notre machine CentOS 7. Dans le deuxième article de cette série, nous couvrirons l'installation et la configuration de Varnish pour rendre notre boutique Magento ultra rapide.

Conditions préalables

Assurez-vous d'avoir suivi les instructions du premier message et que le référentiel EPEL activé.

Comment ça fonctionne

Varnish ne prend pas en charge SSL, nous devons donc utiliser un autre service comme proxy de terminaison SSL, dans notre cas, ce sera Nginx.

Lorsqu'un visiteur ouvre votre site Web via HTTPS sur le port 443 la demande sera traitée par Nginx qui fonctionne comme un proxy et transmet la demande à Varnish (sur le port 80). Varnish vérifie si la demande est mise en cache ou non. S'il est mis en cache, Varnish renverra les données mises en cache à Nginx sans demande à l'application Magento. Si la demande n'est pas mise en cache, Varnish transmettra la demande à Nginx sur le port 8080 qui extraira les données de Magento et Varnish mettra en cache la réponse.

Si un visiteur ouvre votre site Web sans SSL sur le port 80 il sera redirigé vers l'URL HTTPS sur le port 443 par Varnish.

Configuration de Nginx

Nous devons modifier le bloc serveur Nginx que nous avons créé dans le premier article pour gérer la terminaison SSL / TLS et en tant que back-end pour Varnish.

/etc/nginx/conf.d/example.com.conf

upstream fastcgi_backend { server unix:/run/php-fpm/magento.sock; } server { listen 127.0.0.1:8080; server_name example.com www.example.com; set $MAGE_ROOT /opt/magento/public_html; set $MAGE_MODE developer; # or production include snippets/letsencrypt.conf; include /opt/magento/public_html/nginx.conf.sample; } server { listen 443 ssl http2; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; access_log /var/log/nginx/example.com-access.log; error_log /var/log/nginx/example.com-error.log; location / { proxy_pass http://127.0.0.1; proxy_set_header Host $http_host; proxy_set_header X-Forwarded-Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; proxy_set_header X-Forwarded-Port 443; } }

Nous devons également supprimer le bloc serveur Nginx par défaut du fichier nginx.conf . Commentez ou supprimez les lignes suivantes:

/etc/nginx/nginx.conf

… # server { # listen 80 default_server; # listen:80 default_server; # server_name _; # root /usr/share/nginx/html; # # # Load configuration files for the default server block. # include /etc/nginx/default.d/*.conf; # # location / { # } # # error_page 404 /404.html; # location = /40x.html { # } # # error_page 500 502 503 504 /50x.html; # location = /50x.html { # } # }…

Rechargez le service Nginx pour que les modifications prennent effet:

sudo systemctl reload nginx

Installation et configuration du vernis

Varnish est un accélérateur HTTP à proxy inverse rapide qui se trouvera devant notre serveur Web et sera utilisé comme solution de Full Page Cache complète pour notre installation Magento.

Installez Varnish via yum avec la commande suivante:

sudo yum install varnish

Pour configurer Magento pour utiliser l'exécution de Varnish:

php /opt/magento/public_html/bin/magento config:set --scope=default --scope-code=0 system/full_page_cache/caching_application 2

Ensuite, nous devons générer un fichier de configuration Varnish:

sudo php /opt/magento/public_html/bin/magento varnish:vcl:generate > /etc/varnish/default.vcl

La commande ci-dessus doit être exécutée en tant que root ou utilisateur avec les privilèges sudo et elle créera un fichier /etc/varnish/default.vcl utilisant les valeurs par défaut qui sont localhost comme hôte principal et le port 8080 comme port principal.

La configuration par défaut est fournie avec une URL incorrecte pour le fichier de vérification de l'état. Ouvrez le fichier default.vcl et supprimez la partie /pub de la ligne surlignée en jaune:

/etc/varnish/default.vcl

….probe = { #.url = "/pub/health_check.php";.url = "/health_check.php";.timeout = 2s;.interval = 5s;.window = 10;.threshold = 5; }…

Par défaut, Varnish écoute sur le port 6081 , et nous devons le changer en 80 :

/etc/varnish/varnish.params

VARNISH_LISTEN_PORT=80

Une fois les modifications terminées, démarrez et activez le service Varnish:

sudo systemctl enable varnish sudo systemctl start varnish

Vous pouvez utiliser l'outil varnishlog pour afficher les demandes Web en temps réel et pour déboguer Varnish.

Conclusion

Dans ce tutoriel, nous vous avons montré comment accélérer votre instance Magento en implémentant Varnish en tant que cache pleine page.

magento ecommerce centos vernis

Ce message fait partie de Comment installer et configurer Magento 2 sur la série CentOS 7.

Autres articles de cette série:

• Installer Magento 2 sur CentOS 7 • Configurer Magento 2 pour utiliser Varnish sur CentOS 7