
De acuerdo adocumento de nginxenproxy_cache_bypass
Define las condiciones bajo las cuales la respuesta no se tomará de un caché. Si al menos un valor de los parámetros de cadena no está vacío y no es igual a "0", la respuesta no se tomará del caché:
Quiero que la solicitud con el encabezado Cache-Control: no-cache
omita el caché de Nginx y se reenvíe al servicio ascendente. ¿Debo usar la siguiente configuración?
proxy_cache_bypass $http_cache_control;
Pregunté porque parece que Nginx omitirá el caché siempre que Cache-Control
tenga un valor distinto de cero sin verificar si su contenido es no-cache
. Si no, ¿cuál sería la mejor manera de lograr mi objetivo?
Respuesta1
Estás en lo correcto. Deberías usar un map
paraseleccione el valor correctopara controlar el caché.
Por ejemplo:
map $http_cache_control $cache_bypass {
no-cache 1;
}
proxy_cache_bypass $cache_bypass;
Tenga en cuenta que el map
bloque debe colocarse fuera del server
bloque.