Android

Nakonfigurujte magento 2 tak, aby používal lak na centos 7

Nakonfigurujte si vlastní obraz

Nakonfigurujte si vlastní obraz

Obsah:

Anonim

Rychlost stránky nebo doba načítání jsou rozhodující pro úspěch vašeho internetového obchodu. Doba načítání je celková doba, kterou trvá načtení obsahu na konkrétní stránce. Čím delší je doba načítání, tím nižší je míra konverze. Je to také jeden z nejdůležitějších faktorů, které Google zvažuje při určování hodnocení vyhledávače.

V prvním příspěvku jsme nainstalovali Magento 2 na náš stroj CentOS 7. Ve druhém příspěvku této série se budeme zabývat instalací a konfigurací Varnish tak, aby byl náš obchod Magento super rychlý.

Předpoklady

Ujistěte se, že jste postupovali podle pokynů z prvního příspěvku a zda máte EPEL úložiště EPEL .

Jak to funguje

Varnish nepodporuje SSL, takže musíme použít jinou službu jako SSL Termination Proxy, v našem případě to bude Nginx.

Když návštěvník otevře váš web přes HTTPS na portu 443 bude žádost zpracována společností Nginx, která funguje jako proxy a předává požadavek společnosti Varnish (na portu 80). Lak kontroluje, zda je žádost v mezipaměti nebo ne. Pokud je v mezipaměti, vrátí Varnish data v mezipaměti Nginxu bez žádosti do aplikace Magento. Pokud požadavek není uložen do mezipaměti, pošle Varnish požadavek na Nginx na portu 8080 který vytáhne data z Magento a Varnish mezipaměť odešle.

Pokud návštěvník otevře váš web bez SSL na portu 80 , bude přesměrován na HTTPS na portu 443 URL.

Konfigurace Nginx

Musíme upravit serverový blok Nginx, který jsme vytvořili v prvním příspěvku, aby zvládl ukončení SSL / TLS a jako back-end pro 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; } }

Musíme také odebrat výchozí blok serveru Nginx ze souboru nginx.conf . Komentujte nebo odstraňte následující řádky:

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

Znovu načtěte službu Nginx, aby se změny projevily:

sudo systemctl reload nginx

Instalace a konfigurace laku

Varnish je rychlý akcelerátor HTTP s reverzním proxy, který bude sedět před naším webovým serverem a bude používán jako řešení Full Page Cache pro naši instalaci Magento.

Nainstalujte Varnish přes yum pomocí následujícího příkazu:

sudo yum install varnish

Chcete-li nakonfigurovat Magento pro použití běhu Varnish:

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

Dále musíme vygenerovat konfigurační soubor Varnish:

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

Výše uvedený příkaz musí být spuštěn jako root nebo uživatel s právy sudo a vytvoří soubor /etc/varnish/default.vcl použitím výchozích hodnot, které jsou localhost jako hostitel back-end a port 8080 jako port back-end.

Výchozí konfigurace obsahuje nesprávnou adresu URL souboru kontroly stavu. Otevřete soubor default.vcl a odeberte část /pub z řádku zvýrazněného žlutě:

/etc/varnish/default.vcl

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

Ve výchozím nastavení Varnish poslouchá na portu 6081 a musíme jej změnit na 80 :

/etc/varnish/varnish.params

VARNISH_LISTEN_PORT=80

Po dokončení úprav spusťte a aktivujte službu Lakování:

sudo systemctl enable varnish sudo systemctl start varnish

varnishlog nástroje varnishlog můžete prohlížet webové požadavky v reálném čase a ladit program Varnish.

Závěr

V tomto tutoriálu jsme vám ukázali, jak urychlit instanci Magento implementací Varnish jako mezipaměti celé stránky.

Magento ecommerce centos lak

Tento příspěvek je součástí Jak nainstalovat a nakonfigurovat Magento 2 na CentOS 7 series.

Další příspěvky v této sérii:

• Nainstalujte Magento 2 na CentOS 7 • Nakonfigurujte Magento 2 tak, aby používal lak na CentOS 7