私はDjangoプロジェクトのリバースプロキシとしてnginxを実装しています。認証済みユーザーがキャッシュをバイパスすることができるように、彼らは、サイトのコンテンツを更新するときしかし、私は、彼らが勝った、そうでない場合として、それが欲しい、ユーザが認証されている場合、nginxキャッシュをバイパスするDjango
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:5m max_size=1g inactive=60m;
proxy_temp_path /var/cache/nginx/tmp;
server {
...
location/{
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Host $server_name;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
add_header P3P 'CP="ALL DSP COR PSAa PSDa OUR NOR ONL UNI COM NAV"';
# cache
proxy_cache my_cache;
proxy_cache_min_uses 1;
proxy_cache_valid 200 302 10m;
proxy_cache_valid 404 1m;
proxy_ignore_headers X-Accel-Expires Expires Cache-Control;
proxy_cache_use_stale error timeout invalid_header http_500 http_502 http_503 http_504;
proxy_cache_lock on;
proxy_hide_header "Set-Cookie";
add_header X-Proxy-Cache $upstream_cache_status;
}
}
すべてが素晴らしい作品:私は今、以下のnginxのキャッシュの設定を実装しようとしています変更内容は表示されず、期限切れになるまでキャッシュされたコンテンツのみが表示されます。
このアプローチにはどのような方法が最適でしょうか?
ご協力いただければ幸いです。ユーザーが他のautheticatedそのクッキーを削除した場合
おかげ
キャッシング動的コンテンツはほとんど常に悪い考え – e4c5
サイトです大幅に動的ではありません。管理者が更新を行った場合、修正を行ったユーザーは、キャッシュが期限切れになるまで(またはURLバーにnocacheを入力するまで)更新を表示できません。 – tdsymonds
1日あたりのページビュー数はどれくらいですか – e4c5