[PaaS のみ]{class="badge informative" title="Adobe Commerce on Cloud プロジェクト(Adobeが管理する PaaS インフラストラクチャ)およびオンプレミスプロジェクトにのみ適用されます。"}

Commerce用Varnishの設定

Varnishを使用するようにCommerceを設定するには:

  1. 管理者としてAdminにログインします。

  2. Stores / 設定/ 設定 / 詳細 / システム / フルページキャッシュ​をクリックします。

  3. Caching Application リストから、Varnish Caching​をクリックします。

  4. TTL for public content フィールドに値を入力します。

  5. Varnish Configuration​を展開し、次の情報を入力します。

    table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2
    フィールド 説明
    アクセスリスト コンテンツを無効にする完全修飾ホスト名、IP アドレス、または​ クラスレス ドメイン間ルーティング (CIDR) ​表記法IP アドレス範囲を入力します。 ​ ニス キャッシュ パージ ​を参照してください。
    バックエンドホスト Varnish バックエンド​または​ オリジンサーバー ​の完全修飾ホスト名またはIP アドレスとリッスポートを入力します。つまり、コンテンツ Varnishを提供するサーバーが高速化します。 通常、これはあなたのweb サーバーです。 Varnish キャッシュバックエンドサーバーを参照してください。
    バックエンドポート オリジンサーバーのリッスンポート。
    猶予期間 バックエンドがレスポンシブでない場合に、Varnishが古いコンテンツを提供する時間を決定します。 デフォルト値は300秒です。
    パラメーターのサイズを処理します フルページキャッシュ用に{BASE-URL}/page_cache/block/esi HTTP エンドポイントで処理する​ レイアウトハンドル ​の最大数を指定します。 サイズを制限すると、セキュリティとパフォーマンスが向上します。 デフォルトは100です。
  6. 設定を保存」をクリックします。

また、C コマンドラインインターフェイスツールを使用して、管理者にログインする代わりに、コマンドラインからVarnishをアクティベートすることもできます。

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

Varnish設定ファイルの書き出し

管理者からVarnish設定ファイルを書き出すには:

  1. Varnishで使用できるvarnish.vclを作成するには、いずれかの書き出しボタンをクリックします。

    例えば、Varnish 4がある場合、「VCLをVarnish 4​用に書き出し」をクリックします

    次の図は、例を示しています。

    管理者でVarnishを使用するようにCommerceを設定

  2. 既存のdefault.vclをバックアップします。 次に、default.vclに書き出したvarnish.vcl ファイルの名前を変更します。 次に、ファイルを/etc/varnish/ ディレクトリにコピーします。

    code language-shell
    cp /etc/varnish/default.vcl /etc/varnish/default.vcl.bak2
    
    code language-shell
    mv <download_directory>/varnish.vcl default.vcl
    
    code language-shell
    cp <download_directory>/default.vcl /etc/varnish/default.vcl
    
  3. Adobeでは、default.vclを開き、acl purgeの値をVarnish ホストのIP アドレスに変更することをお勧めします。 (複数のホストを別々の行に指定することも、CIDR表記を使用することもできます)。

    以下に例を挙げます。

    code language-conf
     acl purge {
        "localhost";
     }
    
  4. Vagrant ヘルスチェック、猶予モードまたはsaint モード設定をカスタマイズする場合は、高度なVarnish設定を参照してください。

  5. Varnishとweb サーバーを再起動します。

    code language-shell
    service varnish restart
    
    code language-shell
    service httpd restart
    

静的ファイルをキャッシュ

静的ファイルはデフォルトではキャッシュされませんが、キャッシュする場合は、VCLのセクション Static files cachingを編集して、次のコンテンツを得ることができます。

# Static files should not be cached by default
  return (pass);

# But if you use a few locales and do not use CDN you can enable caching static files by commenting previous line (#return (pass);) and uncommenting next 3 lines
  #unset req.http.Https;
  #unset req.http./* {{ ssl_offloaded_header }} */;
  #unset req.http.Cookie;

Varnishを使用するようにCommerceを設定する前に、これらの変更を行う必要があります。

recommendation-more-help
386822bd-e32c-40a8-81c2-ed90ad1e198c