缓存文件太久是否有问题


Is it problematic to cache files for too long?

我前几天发现了 https://developers.google.com/speed/pagespeed/,并将我网站的页面速度从~75提高到~95。

它建议的最后几件事之一是我:

Leverage browser caching: Setting an expiry date or a maximum age in the HTTP headers
for static resources instructs the browser to load previously downloaded resources 
from local disk rather than over the network.

的主要javascript和css文件的缓存时间设置为2天,Google建议我将其设置为至少1周。他们还建议我对 html 和 php 文件做同样的事情。

如果我决定进行大型网站更改,而他们昨天(1 周)刚刚缓存了我的网站,我的用户会发生什么?他们会在 1 周后在我的网站上看到更改吗?

另外,由于我的网站包含一个控制面板并且有一些动态生成的PHP页面,有什么理由缓存其中的任何内容吗?我的服务器每次登录帐户时,不会仍然在 php 脚本中翻腾并生成新内容吗?

您可能不想在访问者浏览器中缓存HTML和PHP。但是,您可能希望将其缓存在可以更好地控制的层中,例如使用 APC 的 PHP 操作码缓存和反向代理(如 Varnish)。

对于静态资产,如 JavaScript 和 CSS 文件,将它们缓存一年或更长时间应该是安全的。如果您对它们进行更改,您只需更新它们的 URL 即可说mystyles.css?v=123浏览器会认为这是一个与mystyles.css?v=122完全不同的文件,甚至只是mystyles.css