Me gustaría usar Nginx para almacenar en caché una aplicación Uwsgi. La aplicación establece el encabezado Cache-Control para algunas solicitudes. El caché de Nginx solo debe habilitarse para esas solicitudes y respetar la condición max-age .
Así que estoy tratando de configurar uwsgi_no_cache 1 para solicitudes en las que upstream no configura Cache-Control . Y uwsgi_no_cache 0 para solicitudes en las que upstream establece el encabezado Cache-Control .
Sin embargo, esto no funciona:
set $no_cache 1; if ($sent_http_cache_control) { set $no_cache 0; } uwsgi_no_cache $no_cache; El problema radica en $sent_http_cache_control , desafortunadamente no refleja el encabezado establecido en sentido ascendente.
¿Hay alguna manera de habilitar solo el almacenamiento en caché en Nginx cuando Cache-Control está configurado en sentido ascendente?
Para los encabezados devueltos por el servicio ascendente, deberá usar el prefijo $upstream_http_
https://nginx.org/en/docs/http/ngx_http_upstream_module.html#var_upstream_http_
Entonces, en su caso, debería ser $upstream_http_cache_control