如何强制浏览器刷新网页的缓存版本

Chr*_*ris 26 apache caching

我有一个网站,由于准备不足的apache conf文件指示用户在未来几年内缓存网站URL.因此,当某人访问该网站时,他们通常不会尝试甚至请求该网页.浏览器只是从缓存加载HTML.

该网站即将获得重大更新,我希望用户能够看到它.有没有办法强迫用户实际重新请求网页?我担心对于一些用户来说,除非碰巧按F5,否则他们可能会看到旧网页好几年了.

lio*_*ori 18

使用不同的URL.如果你的网站的主要入口点(如主索引文件)被缓存,那你就搞砸了...也许你应该注册另一个域名?

  • 您可以通过添加URL参数使其成为不同的URL,例如时间戳:?new = <timestamp>.这不会搞砸SEO. (13认同)
  • 该网站在搜索引擎中排名靠前; 一个不同的网址在我们的SEO惩罚案例基础上不起作用 (4认同)

Sor*_*tis 5

有几个选项可以实现这一点首先在添加元标记的部分:

<meta http-equiv="pragma" content="no-cache" />
Run Code Online (Sandbox Code Playgroud)

基本上浏览器不会缓存页面.

另一种选择是设置会话,这将强制浏览器每次进入新会话,从而使浏览器从服务器获取页面而不是缓存

<?php
session_start();

$_SESSION = array();
session_destroy();

?> 
Run Code Online (Sandbox Code Playgroud)

您可以将此添加到您的网站几天,然后删除.我真的不知道它是否会这样做,但也许你会觉得它很有用

  • 如果浏览器在缓存中有页面,它将永远不会命中服务器,所以这根本没有帮助. (16认同)

Jac*_*yan 2

我认为这是没有办法的。如果他们从不联系您的服务器,您确实无能为力。