Does Nginx `if_modified_since` only work on static resources?
Sending Last-Modified
headers in your app replies is a start but it seems you don't handle If-Modified-Since
properly on incoming requests because your app should reply 304 Not Modified
and not 200 OK
. Changing the directive on nginx only impact requests served directly by nginx i.e. static ressources unless you configure it as a reverse proxy cache. In this case, you may serve stale replies regarding this header value since content will be cached for a period of time without hitting your app. Turning <X>_cache_revalidate
on will use the If-Modified-Since
header to revalidate cache content between nginx's cache and your app once it has expired (where <X>
= proxy / fastcgi / scgi / uwsgi)