客户端请求头无If-None-Match和If-Modified-Since

静态资源放在nginx中,访问页面的时候,js和css请求头中没有If-None-Match和If-Modified-Since,导致无法返回304,且如果静态资源修改也无法获取最新的静态资源,且如果是css,会有provisional headers are shown

图片说明图片说明

而如果直接通过网页访问静态资源,是没有问题的,请求头包含If-None-Match和If-Modified-Since,可以返回304

图片说明
图片说明

在 location / {} 中添加 proxy_cache_revalidate on; ,重启nginx就好了。
可参考 https://blog.vircloud.net/build/nginx-cdn.html#selection-609.3422-609.3448