2017-04-05 11 views
2

カスタムヘッダー "Do-Cache"を使用して、スクリプトからカスタムnginxキャッシュ制御方式を実装したいと考えています。カスタムレスポンスヘッダによるNginxキャッシュのバイパス

map $sent_http_do_cache $nocache { 
     public 0; 
     default 1; 
} 

とのnginxのサーバブロックで: 私はnginxのののhttpブロックで使用

fastcgi_cache_bypass $nocache; 
fastcgi_no_cache $nocache; 

ので、Do-Cache: publicために、nginxのは応答をキャッシュする必要があります。そうでなければ。

ただし、この設定は機能しません。ログにデバッグすることにより、$sent_http_do_cache$nocacheの値はnginxのサーバブロックで使用されるまで正しいものです。サーバーブロック(fastcgi_cache_bypass $nocache、または単純なset $a $nocache)でそれらを使用する場合、$nocache変数は "1"の値を持ち、$sent_http_do_cache - " - "です。

カスタムヘッダに基づいてnginxのキャッシュを管理する他の方法はありますか?

答えて

0

Nginxが要求をバックエンドにプロキシしてその応答を確認し、プロキシキャッシュの目的を無効にする必要があることを意味するため、応答ヘッダーに基づくキャッシュは実行できません。

関連する問題