Android

Configureer magento 2 om vernis te gebruiken op centos 7

How to install and configure Varnish cache on CentOS 7

How to install and configure Varnish cache on CentOS 7

Inhoudsopgave:

Anonim

De paginasnelheid of laadtijd is cruciaal voor het succes van uw online winkel. De laadtijd is de totale hoeveelheid tijd die nodig is om de inhoud op een specifieke pagina te laden. Hoe langer de laadtijd is, hoe lager de conversieratio. Het is ook een van de belangrijkste factoren die Google overweegt om de rankings van zoekmachines te bepalen.

In de eerste post hebben we Magento 2 op onze CentOS 7-machine geïnstalleerd. In het tweede bericht van deze serie behandelen we de installatie en configuratie van Varnish om onze Magento-winkel supersnel te maken.

voorwaarden

Zorg ervoor dat je de instructies van het eerste bericht hebt gevolgd en EPEL repository hebt ingeschakeld.

Hoe het werkt

Varnish biedt geen ondersteuning voor SSL, dus moeten we een andere service gebruiken als SSL Termination Proxy, in ons geval Nginx.

Wanneer een bezoeker uw website opent via HTTPS op poort 443 het verzoek afgehandeld door Nginx, dat werkt als een proxy en het verzoek doorgeeft aan Varnish (op poort 80). Vernis controleert of het verzoek in de cache is opgeslagen of niet. Als het in de cache wordt opgeslagen, stuurt Varnish de gegevens in de cache terug naar Nginx zonder een verzoek aan de Magento-toepassing. Als het verzoek niet in de cache wordt opgeslagen, geeft Varnish het verzoek door aan Nginx op poort 8080 die gegevens van Magento ophaalt en Varnish zal het antwoord in de cache opslaan.

Als een bezoeker uw website zonder SSL op poort 80 opent, wordt hij door Varnish omgeleid naar de HTTPS op poort 443 URL.

Nginx configureren

We moeten het Nginx-serverblok bewerken dat we in het eerste bericht hebben gemaakt om SSL / TLS-beëindiging af te handelen en als back-end voor 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; } }

We moeten ook het standaard Nginx- nginx.conf verwijderen uit het bestand nginx.conf . Geef commentaar of verwijder de volgende regels:

/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 { # } # }…

Laad de Nginx-service opnieuw om de wijzigingen door te voeren:

sudo systemctl reload nginx

Vernis installeren en configureren

Varnish is een snelle reverse-proxy HTTP-versneller die voor onze webserver staat en zal worden gebruikt als een Full Page Cache oplossing voor onze Magento-installatie.

Installeer Varnish via yum met de volgende opdracht:

sudo yum install varnish

Om Magento te configureren om Varnish run te gebruiken:

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

Vervolgens moeten we een Varnish-configuratiebestand genereren:

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

De bovenstaande opdracht moet worden uitgevoerd als root of gebruiker met sudo-rechten en maakt een bestand /etc/varnish/default.vcl met de standaardwaarden die localhost als back- /etc/varnish/default.vcl en poort 8080 als back- /etc/varnish/default.vcl .

De standaardconfiguratie wordt geleverd met een verkeerde URL voor het gezondheidscontrolebestand. Open het default.vcl bestand en verwijder het /pub gedeelte van de geel gemarkeerde regel:

/etc/varnish/default.vcl

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

Standaard luistert Varnish op poort 6081 en moeten we dit wijzigen in 80 :

/etc/varnish/varnish.params

VARNISH_LISTEN_PORT=80

Zodra u klaar bent met de wijzigingen, start en schakelt u de Varnish-service in:

sudo systemctl enable varnish sudo systemctl start varnish

U kunt de varnishlog tool gebruiken om realtime webverzoeken te bekijken en voor het debuggen van vernis.

Conclusie

In deze zelfstudie hebben we u laten zien hoe u uw Magento-instantie kunt versnellen door Varnish te implementeren als volledige paginacache.

magento ecommerce centos vernis

Dit bericht maakt deel uit van de installatie en configuratie van Magento 2 op CentOS 7-serie.

Andere berichten in deze serie:

• Installeer Magento 2 op CentOS 7 • Configureer Magento 2 om Varnish te gebruiken op CentOS 7