Hello! On Sun, Jan 24, 2021 at 12:56:35PM +0000, Phil Endecott wrote:
> Maxim Dounin wrote: > > You haven't configured any proxy_cache_valid directives (see > > http://nginx.org/r/proxy_cache_valid for details), and the > > response doesn't have any cache validity headers, such as > > "Expires" or "Cache-Control: max-age=...". > > Thanks Maxim! It now seems to work. > > I guess I was expecting the proxy_cache_path inactive=... time > to determine how long things were cached for. I think I have a > better understanding now. Let me check if I have this right: > > The upstream server doesn't specify any Cache-Control or Expires > headers. It does supply an ETag and Last-Modified. I'd like to > cache these files for a long time (say 18 months), but revalidate > using the ETag (say after 5 minutes). So I have: > > proxy_cache_path ... inactive=18M; > proxy_cache_revalidate on; > proxy_cache_valid 200 5m; # Beware M = Month, m = minute. > > Is that right? The "inactive=" parameter controls how long cache items are stored if they aren't accessed at all. It is basically a way to control the total size of your cache. Usually 18 months is way too long for this time. > I have some other questions: > > 1. What proxy_cache_key should I be using? I am unsure of the difference > between e.g. host and proxy_host, and uri and request_uri. I currently > have > > proxy_cache_convert_head off; > proxy_cache_key "$request_method$scheme$host$request_uri"; What cache key to use depends on your particular use case. The one you are using is good enough as long as you use simple proxying. > Do I need "$is_args$args" ? No, request arguments are already included in the $request_uri variable (see http://nginx.org/r/$request_uri). > 2. Is there any way to indicate the cache status in the access log? I.e. > hit/miss/revalidated/uncachable etc. The cache status is available in the $upstream_cache_status variable (http://nginx.org/r/$upstream_cache_status). If you want it in the logs, you can do so by configuring appropriate log_format (see http://nginx.org/r/log_format). -- Maxim Dounin http://mdounin.ru/ _______________________________________________ nginx mailing list nginx@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx