Setting up a server for Magento 2 with Varnish cache and Nginx #magento2 #Varnish #Digitalocean
目次:
ページの速度または読み込み時間は、オンラインストアの成功に不可欠です。 ロード時間は、特定のページのコンテンツをロードするのにかかる合計時間です。 読み込み時間が長いほど、コンバージョン率は低くなります。 また、検索エンジンのランキングを決定するためにGoogleが検討する最も重要な要素の1つでもあります。
最初の投稿では、CentOS 7マシンにMagento 2をインストールしました。 このシリーズの2番目の投稿では、Magentoストアを超高速にするためのVarnishのインストールと構成について説明します。
前提条件
最初の投稿の指示に従っていることと、
EPEL
リポジトリが有効になっていることを確認してください。
使い方
VarnishはSSLをサポートしていないため、別のサービスをSSL終了プロキシとして使用する必要があります。この場合はNginxです。
訪問者が
HTTPS
でポート
443
Webサイトを開くと、リクエストはNginxによって処理され、プロキシとして機能し、リクエストをVarnish(ポート80)に渡します。 ニスは、リクエストがキャッシュされているかどうかをチェックします。 キャッシュされている場合、VarnishはMagentoアプリケーションへのリクエストなしで、キャッシュされたデータをNginxに返します。 リクエストがキャッシュされていない場合、Varnishはポート
8080
でNginxにリクエストを渡し、Magentoからデータをプルし、Varnishはレスポンスをキャッシュします。
訪問者が
SSL
なしでポート
80
Webサイトを開くと、彼はVarnishによってポート
443
URLの
HTTPS
にリダイレクトされ
HTTPS
。
Nginxの構成
最初の投稿で作成したNginxサーバーブロックを編集して、SSL / TLS終了を処理し、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; } }
また、
nginx.conf
ファイルからデフォルトのNginxサーバーブロックを削除する必要があります。 次の行をコメント化または削除します。
… # 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 { # } # }…
変更を有効にするには、Nginxサービスをリロードします。
Varnishのインストールと構成
Varnishは高速リバースプロキシHTTPアクセラレータであり、Webサーバーの前に配置され、Magentoインストールの
Full Page Cache
ソリューションとして使用されます。
次のコマンドを使用して、yumを介してVarnishをインストールします。
sudo yum install varnish
Varnishを使用するようにMagentoを設定するには:
php /opt/magento/public_html/bin/magento config:set --scope=default --scope-code=0 system/full_page_cache/caching_application 2
次に、ワニス構成ファイルを生成する必要があります。
sudo php /opt/magento/public_html/bin/magento varnish:vcl:generate > /etc/varnish/default.vcl
上記のコマンドは、sudo特権を持つルートまたはユーザーとして実行する必要があり、バックエンドホストとして
localhost
、バックエンドポートとしてポート
8080
あるデフォルト値を使用して、
/etc/varnish/default.vcl
ファイルを作成します。
デフォルト設定には、ヘルスチェックファイルのURLが間違っています。
default.vcl
ファイルを開き、黄色で強調表示されている行から
/pub
部分を削除します。
….probe = { #.url = "/pub/health_check.php";.url = "/health_check.php";.timeout = 2s;.interval = 5s;.window = 10;.threshold = 5; }…
デフォルトでは、Varnishはポート
6081
でリッスンし、
80
に変更する必要があります。
VARNISH_LISTEN_PORT=80
変更が完了したら、ニスサービスを開始して有効にします。
sudo systemctl enable varnish
sudo systemctl start varnish
varnishlog
ツールを使用して、リアルタイムのWeb要求を表示したり、Varnishをデバッグしたりできます。
結論
このチュートリアルでは、Varnishをフルページキャッシュとして実装することにより、Magentoインスタンスを高速化する方法を示しました。
magento ecommerce centosワニスこの投稿は、CentOS 7シリーズにMagento 2をインストールおよび構成する方法の一部です。
このシリーズの他の投稿:
•CentOS 7にMagento 2をインストールします•CentOS 7でVarnishを使用するようにMagento 2を設定しますCentOS 7でユーザーを追加および削除する方法
ユーザーを追加および削除する方法を知ることは、Linuxユーザーが知っておくべき基本的なスキルの1つです。 このチュートリアルでは、CentOS 7システムでユーザーを追加および削除する方法を説明します。
CentOS 7でスワップスペースを追加する方法
スワップは、物理RAMメモリの容量がいっぱいになったときに使用されるディスク上のスペースです。 このチュートリアルでは、CentOS 7システムにスワップファイルを追加する方法について説明します。
CentOS 8でスワップスペースを追加する方法
スワップは、物理RAMメモリの容量がいっぱいになったときに使用されるディスク上のスペースです。 この記事では、CentOS 8システムでスワップファイルを追加する手順について説明します。