Nginxはコンテンツをキャッシュすることができます。つまり、リバースプロキシとして機能しますが、Nginx設定ではパージ時間を修正する必要があります。Nginxキャッシングはキャッシュ制御ヘッダーを尊重します
Nginxをアップストリームアプリケーションサーバーのキャッシュコントロールヘッダーに従って自動的にパージする方法はありますか?
Nginxはコンテンツをキャッシュすることができます。つまり、リバースプロキシとして機能しますが、Nginx設定ではパージ時間を修正する必要があります。Nginxキャッシングはキャッシュ制御ヘッダーを尊重します
Nginxをアップストリームアプリケーションサーバーのキャッシュコントロールヘッダーに従って自動的にパージする方法はありますか?
この問題を調査した結果、ほとんどの人が「1日の記事をキャッシュする」とは言えないCMSに関心があるように見えるが、リクエストごとに異なる可能性のある動的なアプリケーションサーバーではそれほど重要ではないことがわかった。
いくつかのオプションは以下のとおりです。
アップデート:さらに見ると、proxy_cache_validは存在する必要もないと思います。アップストリームからのキャッシュ制御/有効期限がない場合は、単にデフォルトの有効期限を設定します。 proxy_cache_validがない場合、Nginxはコンテンツを古いと見なしますが、すぐにパージされません。キャッシュ内の失効したコンテンツを保持する理由(「非アクティブ」パラメータと、オプションでproxy_cache_validで判断)は、proxy_cache_use_stale(上流にエラーがある場合に便利)を使用して失効したコンテンツを配信できることです。
nginxは既にこれを行います。 http://nginx.org/r/proxy_cache_validキャッシュのパラメータは、「Expires」または「Cache-Control」のヘッダーフィールドで設定できます。 –
することができます。私はそれが不可能だった(ソースatmを見つけることができない)を読んだ。あなたはそれを試しましたか?私はそれがどのようにnginxの設定で定義されたキャッシュの限界とヘッダーの1つの間で解決するのだろうか。例えばそれはちょうどnginxの設定の長さを無視するか、両方の値の最小値を適用します。 – mahemoff
"キャッシュのパラメータは、**レスポンスヘッダ**に直接設定することもできます。これは、ディレクティブを使用したキャッシング時間の設定より**優先度が**高くなっています。 –