uwsgi_no_cache

`uwsgi_no_cache` 指令指定了在何种条件下来自 uWSGI 服务器的响应不应被缓存。 — NGINX HTTP Core

uwsgi_no_cache
httpserverlocation
语法uwsgi_no_cache string | $variable ;
默认值none
上下文http, server, location
模块NGINX HTTP Core
参数1+

说明

`uwsgi_no_cache` 指令用于 NGINX 配置中,根据指定的参数防止某些响应被缓存。当该指令带有一个或多个参数时,它会告诉 NGINX 对于任何匹配这些参数的请求不缓存响应。这在必须始终从 uWSGI 应用服务器新鲜获取内容的情况下尤其有用,例如经常变化的动态内容。 `uwsgi_no_cache` 的参数可以包含会被求值为条件或数值的变量,从而实现对缓存的细粒度控制。例如,可以指定某些请求头或状态码,使响应被标记为不可缓存。该指令是上下文敏感的,可在包括 `http`、`server` 和 `location` 在内的各种作用域中使用,从而在整个 NGINX 配置中实现灵活的缓存策略。 当满足指定条件时,响应由 NGINX 处理但不会存储到其缓存机制中,确保用户始终收到最新内容。如果未指定该指令,NGINX 可能会根据默认缓存设置缓存符合条件的响应,从而可能导致提供过时的内容。

配置示例

location /app {
    uwsgi_pass  unix:/tmp/uwsgi.sock;
    uwsgi_no_cache $http_cache_control;
}

确保所提供的参数正确匹配缓存需求;参数错误可能导致意外的缓存行为。

请记得检查配置中的其他部分是否存在缓存设置,例如 `proxy_cache` 或其他可能覆盖此设置的缓存指令。