この記事は主に nginx ngx_http_proxy_module のキャッシュ関連の設定パラメーターを分析します。
名前 | デフォルト設定 | スコープ | 公式説明 | 中国語解釈 | モジュール |
---|---|---|---|---|---|
プロキシ_キャッシュオフ; | http、サーバー、場所 | 共有を定義しますキャッシュに使用されるメモリ ゾーン。同じゾーンを複数の場所で使用できます。パラメータ値には変数を含めることができます (1.7.9)。off パラメータは、バックエンド応答キャッシュを有効にするかどうかを設定します。有効な場合、パラメータ値はゾーンの名前です (例: proxy_cache mycache | ngx_http_proxy_module | proxy_cache_valid | |
http、server location | Sさまざまな応答コードのキャッシュ時間を設定します。コードを設定しない場合、デフォルトは 200、301、302 です。any を使用してすべてのコードを指定することもできます | ngx_http_proxy_module | proxy_cache_key | proxy_cache_key $scheme$proxy_host$ request_uri; | |
キャッシュ用のキーを定義します | デフォルト値はproxy_cache_key $scheme$proxy_host$uri$と同等です。 is_args$args; | ngx_http_proxy_module | proxy_cache_path | デフォルト値はありません。インスタンス proxy_cache_path /var/cache tables=1:2keys_zone=imgcache:100m inactive=2h max_size=1g; | |
を設定しますキャッシュのパスおよびその他のパラメータは、キャッシュ内のファイル名に基づいてキャッシュ キーに適用されます。レベル パラメータは、それぞれ 1 から 3 までのキャッシュの階層レベルを定義します。 level は値 1 または 2 を受け入れます。 | キャッシュ ストレージへのパス、キャッシュ キーという名前の md5 値を指定します。たとえば、level パラメーターに基づいて生成されます。 2:3. 最初のディレクトリ名は md5 値の最後の値を取り、2 番目のディレクトリ名は 2 番目と 3 番目の値を取り、3 番目のディレクトリ名は 4 番目、5 番目、および 6 番目の値を受け取ります。 md5 値; key_zone パラメータは、共有メモリにキャッシュされたメタデータの名前とメモリ サイズを指定するために使用されます (例: key_zone=imgcache:100m )。すべてのキャッシュ検索では最初にここでメタデータが検索され、ヒットした場合は次のようになります。ファイル システムにアクセスして、対応するキャッシュを検索します。 inactive は、アクセス タイムアウトによってキャッシュが削除されない時間を指定するために使用されます。デフォルトは 10 分ですが、 max_size などを使用して自分で指定することもできます。キャッシュの最大値を指定します。この値を超える場合、文字列パラメーターの少なくとも 1 つの値が空でなく、等しくない場合、最も最近使用されたキャッシュはキャッシュから自動的に削除されません。 「0」に設定すると、応答はキャッシュから取得されません。 | 特定の値が無効な場合にどの応答が無効であるかを指定します。空または 0 でない場合、proxy_cache_bypass $http_pragma などのキャッシュは使用されません。 $http_authorization; | ngx_http_proxy_module | proxy_cache_min_uses | |
http、server、location | 応答がキャッシュされるまでのリクエストの数を設定します。 | キャッシュするリクエストの数を指定しますその後の応答内容ディレクティブのパラメーターは、proxy_next_upstream ディレクティブのパラメーターと一致します。 | proxy_cache_use_stale エラー タイムアウト valid_header http_500 http_502 http_503 http_504 などのステータス コードを返すときに、バックエンド サーバーが期限切れのキャッシュを使用できることを指定します。 ; | ngx_http_proxy_module | |
proxy_cache_lock | proxy_cache_lock off; | http、server、location | 有効にすると、プロキシサーバーにリクエストを渡すことにより、proxy_cache_key ディレクティブに従って識別された新しいキャッシュ要素を設定できるリクエストは一度に 1 つだけ許可されます。同じキャッシュ要素の他のリクエストは、proxy_cache_lock_timeout ディレクティブで設定された時間まで、応答がキャッシュに表示されるか、この要素のキャッシュ ロックが解放されるまで待機します。 | デフォルトでは無効ですが、有効になっている場合は、同じキャッシュを更新するリクエストは 1 つだけあり、他のリクエストはキャッシュにデータが入るのを待つか、制限時間内にロックが解放されるのを待ちます。 | proxy_cache_lock_timeout |
http、サーバー、場所 | 時間が経過すると、リクエストはプロキシサーバーに渡されますが、 | その後はレスポンスはキャッシュされません。キャッシュ ロックがタイムアウトするまで待機すると、バックエンドが直接リクエストされ、結果はキャッシュされません。nginx 1.1.12 では | ngx_http_proxy_module | インスタンス |
nginx リバースプロキシキャッシュ設定
nginx proxy_cache_path ディレクティブについて理解する
関連の推奨:
nginx とAlibaba Cloud で https メソッドの手順をデプロイするためのノード
以上がnginx プロキシ キャッシュ構成パラメータの解釈の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。