如何设置caching永不过期,并尽量减lessNginx的请求?

我有一个caching失效系统,所以我需要设置caching为CSS | js永不过期。

我试过这个

location ~* \.(js|css)$ { # |png|jpg|jpeg|gif|ico expires max; #log_not_found off; # what's this for? } 

这就是我在萤火虫中看到的:

在这里输入图像说明

正如你所看到的,请求仍在进行,尽pipe他们只收到一个“未修改”的响应。 但是我想完全避免它们,这有可能吗?

另外,我读过一年以上的期限已经或将被认为是无效的标准。 真的吗?

编辑

让我完成@ DisgruntledGoat的答案:

  • 正常访问url,比如点击一个链接或者在url栏中input:cache works,只有一个请求为这个url发出,而0为这个资产。
  • F5重新加载:发出许多请求,但是您收到资产的所有“304未修改”响应,因此不会下载它们
  • Ctrl + F5重新加载没有caching:许多请求,所有'200成功',所有的资产再次下载。

你正在重新加载页面来testing这个? 当你这样做时,浏览器通常会再次请求每个文件(至lessChrome是)。 如果您点击指向您网站上不同页面的链接,浏览器应该只使用caching而不要重新请求文件。

此外,根据规范, Expires指令的date只能有一年的时间,所以2037年的价值是无效的。 话虽如此,浏览器通常接受远未来的价值就好了。

这不能以另一种方式来完成。 这取决于客户端浏览器如何处理caching。 设置caching不应超过修改dateSource的一年。

Nginx是非常有效的,如果你每天访问量less于1,000,000人,你就不必担心发送给Nginx的请求。 如果是带宽,如果浏览器得到响应,它仍然使用caching中的数据,所以没有带宽溢出。