uwsgi_cache_bypass

uwsgi_cache_bypass 指令控制在何种条件下跳过对 uWSGI 响应的缓存。

语法uwsgi_cache_bypass condition | condition ...;
默认值none
上下文http, server, location
参数1+

说明

uwsgi_cache_bypass 指令在 NGINX 中用于指定导致跳过已缓存 uWSGI 响应的具体条件。这在某些请求不应获取缓存内容的场景中特别有用,可确保在不受缓存干扰的情况下提供最新的数据。您可以为该指令指定一个或多个参数,这些参数可以是用户定义的变量或基于 HTTP 头或其他请求属性的条件。

该指令可以放在 httpserverlocation 上下文中,并支持一个或多个参数。每个参数表示一个条件或变量,当其计算为真时,会触发缓存系统为该请求跳过缓存响应。例如,您可以将 uwsgi_cache_bypass 配置为避免对已认证用户进行缓存,或在请求中存在特定查询参数时禁止缓存。

此外,该指令与其他与缓存相关的指令(例如 uwsgi_cacheuwsgi_cache_key)协同工作。将 uwsgi_cache_bypass 与这些指令正确配合使用可以微调缓存行为,更好地满足您的应用需求,使开发者能够控制何时不使用缓存,从而提供更具动态性的内容交付。

配置示例

location /api {
    uwsgi_pass backend;
    uwsgi_cache my_cache;
    uwsgi_cache_bypass $arg_bypass;
}

请确保您指定的任何条件确实求值为 true 以绕过缓存;否则将发生缓存。

使用过多的条件,如果管理不当,可能导致性能下降,因为这会为请求处理增加开销。

← 返回所有指令