1. プロキシモジュールのキャッシュ
1. 設定ファイル
<code><span>#注:proxy_temp_path和proxy_cache_path指定的路径必须在同一分区</span> proxy_temp_path /web/tmp/nginx; <span>#设置Web缓存区名称为cache_one,内存缓存空间大小为100MB,1天没有被访问的内容自动清除,硬盘缓存空间大小为1GB。</span> proxy_cache_path /web/cache/nginx levels=<span>1</span>:<span>2</span> keys_z>100m inactive=<span>1</span>d max_size=<span>1</span>g; </code>
<code>location / { <span>#如果后端的服务器返回502、504、执行超时等错误,自动将请求转发到upstream负载均衡池中的另一台服务器,实现故障转移。</span> proxy_next_upstream http_502 http_504 error timeout invalid_header; proxy_cache cache_one; <span>#对不同的HTTP状态码设置不同的缓存时间</span> proxy_cache_valid <span>200</span><span>304</span><span>1</span>h; <span>#以域名、URI、参数组合成Web缓存的Key值,Nginx根据Key值哈希,存储缓存内容到二级缓存目录内</span> proxy_cache_key <span>$host</span><span>$uri</span><span>$is_args</span><span>$args</span>; proxy_pass http://webserver; proxy_redirect off; proxy_<span>set</span>_header Host <span>$host</span>; proxy_<span>set</span>_header X-Real-IP <span>$remote_addr</span>; proxy_<span>set</span>_header X-Forwarded-For <span>$proxy_add_x_forwarded_for</span>; }</code>
リバースプロキシのキャッシュ機能は、URL に基づいてキャッシュされた静的ファイルを生成する機能ではありません
2.設定ファイル
うろ覚え注意:
1. fastcgi 応答ヘッダーに Expires Cache-Control Set-Cookie が含まれている場合、fastcgi_cache は機能しないため、fastcgi_ignore_headers 設定項目を追加する必要があります。
2. ヘッダー情報 X-Cache-CFC を追加して、キャッシュが機能しているかどうかをテストします。
HIT キャッシュヒット
EXPIRED キャッシュの有効期限が切れ、リクエストがバックエンドに送信されます
UPDATING キャッシュを更新中、古い応答が使用されます
STALE バックエンドは期限切れの応答を取得します
BYPASS キャッシュはバイパスされます
3. 参考
http://www.qttc.net/201307355.html
https://serversforhackers.com/nginx-caching/
http://www.ha97.com/5194.html
http://www.cnxct.com/something-reminder-in-nginx-fastcgi_cache-and-php-session_cache_limiter/