废话不多说了, 直接上配置, 其实 fastcgi_cache 和 proxy_cache 的配置基本一样:
1 | # !缓存文件存放目录 |
几个问题:
为什么使用 set 变量控制
$xwsoul_nocache
来控制 fastcgi_cache_bypass(0.8x之后官方推荐的方法) 和 fastcgi_no_cache 参数确定是否生成缓存?
很简单, 因为不能是所有的页面都需要 cache.当然有更好的实现方法请尽量给建议.如果我在
/cgi_cache/
下的脚本不需要缓存可以实现么, 怎么办?
这个也很简单, 通过 CGI 的返回的 Head 即可控制:header('Cache-Control:no-cache, must-revalidate, max-age=0;');
和header('Expires:0;');
均可实现.为什么缓存的 Cache Name 里需要
$scheme
?
因为http/https
是不同的安全级别, 可能需要的缓存机制是不一样的!
最后附上对应访问的PHP测试脚本
1 |
|