如何清除缓存,如果网站出现错误


How to clear the cache if site appears wrong

这个标题可能有点糟糕或误导人,但我的问题是:

是否有一种好的方法来确保如果有人在过去访问过我的网站,然后在一段时间后重新访问它,旧的内容不会显示,而是新的内容?

我添加了这样的东西到我的php -一定要发送头在你写任何其他....

  header("Cache-Control: no-cache, must-revalidate"); 
  header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); 

使用http头条目关闭缓存:

<head>
    <meta http-equiv="Expires" content="0" />
    <meta http-equiv="Cache-Control" content="no-store, no-cache, must-revalidate" />
    <meta http-equiv="Cache-Control" content="post-check=0, pre-check=0" />
    <meta http-equiv="Pragma" content="no-cache" />
</head>

显示旧内容的原因可能是它已被缓存。用户的浏览器可能会从缓存中获取内容。如果没有缓存,那么用户每次在浏览器中打开网站时都会得到新的内容。

我猜你想要有一个选项来强制用户的浏览器显示更新的页面,即使浏览器在缓存中有页面。该页面仍然可能被缓存,但当您有新版本时,您希望用户看到新版本。

我建议考虑以下方法。您可以在现场为页面url添加参数,当页面内容发生变化时,可以修改该参数。例如:

http://example.com/code.js?version=22

我对CSS和JS文件使用这种方法。通常它们应该被缓存很长时间,可能是几周或几个月。但是当文件更新时,用户应该得到新版本。

这与正常的缓存控制无关。但解决了任务,当你想要你的文件和页面缓存和控制何时应该更新。

如果您有任何问题请告诉我。
相关文章: