fastcgi_no_cache
`fastcgi_no_cache` 指令根据指定条件控制是否缓存来自 FastCGI 应用的响应。 — NGINX HTTP Core
fastcgi_no_cache
httpserverlocation
语法fastcgi_no_cache condition | variable_names;
默认值none
上下文http, server, location
模块NGINX HTTP Core
参数1+
说明
`fastcgi_no_cache` 指令用于告诉 NGINX 是否缓存来自 FastCGI 服务器(例如 PHP 处理器)的响应。该指令可接受一个或多个变量或条件来决定缓存策略。例如,如果某个变量的值为 true,NGINX 将不缓存响应,从而允许动态内容生成,而不会因缓存命中而导致性能问题。它与 `fastcgi_cache_bypass` 指令配合使用,以基于相似条件实现一致的缓存行为。该指令必须在 NGINX 配置文件的 `http`、`server` 或 `location` 上下文中设置,通常与缓存相关设置配合使用以获得最佳性能。在需要在特定情况下执行缓存失效的应用中它尤其有用,例如用户已登录时,或响应内容根据请求参数发生显著变化时。通过有效管理动态内容,`fastcgi_no_cache` 有助于保持应用数据的新鲜度并改善 Web 应用的用户体验。
配置示例
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_no_cache $http_cache_control;
}⚠
确保缓存条件定义清晰,以避免对 FastCGI 服务器造成不必要的负载。
⚠
使用不正确的变量名可能导致意外的缓存行为或错误的响应。