androide

Configura magento 2 per usare la vernice su centos 7

Come installare CentOS Web Panel (CWP) - ITA

Come installare CentOS Web Panel (CWP) - ITA

Sommario:

Anonim

La velocità della pagina o il tempo di caricamento è fondamentale per il successo del tuo negozio online. Il tempo di caricamento è il tempo totale impiegato per caricare il contenuto di una pagina specifica. Più lungo è il tempo di caricamento, più basso è il tasso di conversione. È anche uno dei fattori più importanti che Google considera per determinare le classifiche dei motori di ricerca.

Nel primo post, abbiamo installato Magento 2 sulla nostra macchina CentOS 7. Nel secondo post di questa serie, copriremo l'installazione e la configurazione di Varnish per rendere il nostro negozio Magento super veloce.

Prerequisiti

Assicurati di aver seguito le istruzioni dal primo post e di avere abilitato il repository EPEL .

Come funziona

Varnish non supporta SSL, quindi dobbiamo usare un altro servizio come proxy di terminazione SSL, nel nostro caso sarà Nginx.

Quando un visitatore apre il tuo sito Web su HTTPS sulla porta 443 la richiesta verrà gestita da Nginx, che funge da proxy e passa la richiesta a Varnish (sulla porta 80). La vernice verifica se la richiesta è memorizzata nella cache o meno. Se è memorizzato nella cache, Varnish restituirà i dati memorizzati nella cache a Nginx senza una richiesta all'applicazione Magento. Se la richiesta non viene memorizzata nella cache, Varnish passerà la richiesta a Nginx sulla porta 8080 che estrarrà i dati da Magento e Varnish memorizzerà nella cache la risposta.

Se un visitatore apre il tuo sito Web senza SSL sulla porta 80 , verrà reindirizzato a HTTPS sull'URL della porta 443 da Varnish.

Configurare Nginx

Dobbiamo modificare il blocco server Nginx che abbiamo creato nel primo post per gestire la terminazione SSL / TLS e come back-end per 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; } }

Dobbiamo anche rimuovere il blocco del server Nginx predefinito dal file nginx.conf . Commenta o elimina le seguenti righe:

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

Ricarica il servizio Nginx per rendere effettive le modifiche:

sudo systemctl reload nginx

Installazione e configurazione della vernice

Varnish è un acceleratore HTTP con inversione rapida del proxy che si posizionerà di fronte al nostro server Web e verrà utilizzato come soluzione Full Page Cache per la nostra installazione di Magento.

Installa Varnish via yum con il seguente comando:

sudo yum install varnish

Per configurare Magento per usare la corsa di Varnish:

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

Successivamente, dobbiamo generare un file di configurazione di Varnish:

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

Il comando sopra deve essere eseguito come root o utente con privilegi sudo e creerà un file /etc/varnish/default.vcl usando i valori predefiniti che sono localhost come localhost back-end e porta 8080 come porta back-end.

La configurazione predefinita include un URL errato per il file di controllo dello stato. Apri il file default.vcl e rimuovi la parte /pub dalla linea evidenziata in giallo:

/etc/varnish/default.vcl

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

Per impostazione predefinita, Varnish è in ascolto sulla porta 6081 e dobbiamo cambiarlo in 80 :

/etc/varnish/varnish.params

VARNISH_LISTEN_PORT=80

Una volta terminate le modifiche, avvia e abilita il servizio Varnish:

sudo systemctl enable varnish sudo systemctl start varnish

È possibile utilizzare lo strumento varnishlog per visualizzare le richieste Web in tempo reale e per il debug di Varnish.

Conclusione

In questo tutorial, ti abbiamo mostrato come velocizzare la tua istanza di Magento implementando Varnish come cache a pagina intera.

vernice centos ecommerce magento

Questo post fa parte di Come installare e configurare Magento 2 sulla serie CentOS 7.

Altri post di questa serie:

• Installa Magento 2 su CentOS 7 • Configura Magento 2 per usare Varnish su CentOS 7