Android

Konfigurasikan magento 2 untuk menggunakan pernis pada centos 7

014. linux ubuntu server 15 04, nginx, php php5 fpm fastcgi, memcached with load balancing and pseud

014. linux ubuntu server 15 04, nginx, php php5 fpm fastcgi, memcached with load balancing and pseud

Daftar Isi:

Anonim

Kecepatan halaman atau waktu pemuatan sangat penting untuk keberhasilan toko online Anda. Waktu pemuatan adalah jumlah total waktu yang dibutuhkan konten pada halaman tertentu untuk memuat. Semakin lama waktu pemuatan, semakin rendah tingkat konversi. Ini juga merupakan salah satu faktor terpenting yang dipertimbangkan Google untuk menentukan peringkat mesin pencari.

Pada posting pertama, kami menginstal Magento 2 pada mesin CentOS 7 kami. Pada posting kedua dari seri ini, kita akan membahas tentang menginstal dan mengkonfigurasi Varnish untuk membuat toko Magento kita super cepat.

Prasyarat

Pastikan Anda telah mengikuti instruksi dari posting pertama dan Anda telah mengaktifkan repositori EPEL .

Bagaimana itu bekerja

Varnish tidak mendukung SSL, jadi kami perlu menggunakan layanan lain sebagai Proxy Pemutusan SSL, dalam kasus kami yang akan menjadi Nginx.

Ketika pengunjung membuka situs web Anda melalui HTTPS pada port 443 , permintaan akan ditangani oleh Nginx yang berfungsi sebagai proxy dan meneruskan permintaan ke Varnish (pada port 80). Varnish memeriksa apakah permintaan di-cache atau tidak. Jika di-cache, Varnish akan mengembalikan data yang di-cache ke Nginx tanpa permintaan ke aplikasi Magento. Jika permintaan tidak di-cache Varnish akan meneruskan permintaan ke Nginx pada port 8080 yang akan menarik data dari Magento dan Varnish akan men-cache respons.

Jika pengunjung membuka situs web Anda tanpa SSL pada port 80 maka ia akan dialihkan ke HTTPS pada port 443 URL oleh Varnish.

Mengkonfigurasi Nginx

Kita perlu mengedit blok server Nginx yang kita buat di posting pertama untuk menangani penghentian SSL / TLS dan sebagai back-end untuk 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; } }

Kita juga perlu menghapus blok server Nginx default dari file nginx.conf . Komentari atau hapus baris berikut:

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

Muat ulang layanan Nginx agar perubahan diterapkan:

sudo systemctl reload nginx

Menginstal dan Mengkonfigurasi Pernis

Varnish adalah akselerator HTTP reverse-proxy cepat yang akan duduk di depan server web kami dan itu akan digunakan sebagai solusi Full Page Cache untuk instalasi Magento kami.

Instal Varnish via yum dengan perintah berikut:

sudo yum install varnish

Untuk mengonfigurasi Magento untuk menggunakan Varnish run:

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

Selanjutnya, kita perlu membuat file konfigurasi Varnish:

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

Perintah di atas perlu dijalankan sebagai root atau pengguna dengan hak akses sudo dan itu akan membuat file /etc/varnish/default.vcl menggunakan nilai default yang localhost sebagai back-end host dan port 8080 sebagai back-end port.

Konfigurasi default dilengkapi dengan URL yang salah untuk file pemeriksaan kesehatan. Buka file default.vcl dan hapus bagian /pub dari baris yang disorot dengan warna kuning:

/etc/varnish/default.vcl

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

Secara default, Varnish mendengarkan pada port 6081 , dan kami perlu mengubahnya ke 80 :

/etc/varnish/varnish.params

VARNISH_LISTEN_PORT=80

Setelah Anda selesai dengan modifikasi, mulai dan aktifkan layanan Varnish:

sudo systemctl enable varnish sudo systemctl start varnish

Anda dapat menggunakan alat varnishlog untuk melihat permintaan web real-time dan untuk debugging Varnish.

Kesimpulan

Dalam tutorial ini, kami telah menunjukkan kepada Anda cara mempercepat instance Magento Anda dengan menerapkan Varnish sebagai cache halaman penuh.

magento ecommerce centos pernis

Posting ini adalah bagian dari Cara menginstal dan mengkonfigurasi Magento 2 pada seri CentOS 7.

Posting lain dalam seri ini:

• Instal Magento 2 pada CentOS 7 • Konfigurasi Magento 2 untuk menggunakan Varnish pada CentOS 7