强制浏览器重新加载index.htm

时间:2014-11-08 14:26:18

标签: html caching reload

如何通过在浏览器的地址字段中输入URL www.mydomain.com/index.htm或www.mydomain.com来强制浏览器在加载页面时始终加载最新版本的index.htm,按回车。

我正在Chrome中尝试此操作,最新版本的index.htm显然只会在我手动刷新(F5)时加载,或者当URL已经在浏览器的地址栏中时按下回车键。

我想我正在做一些非常愚蠢的事情,因为当我搜索这个问题时,我所能找到的解决方案是关于如何通过将?v = xxxx附加到文件名来使浏览器重新加载.js和.css文件。但是,如果不是最新版本的index.htm页面,我应该如何工作呢?

我也尝试过把

<meta http-equiv="cache-control" content="no-cache">

在index.htm的<head>中。但这似乎没有任何影响。

非常感谢任何帮助!

谢谢,Linus

4 个答案:

答案 0 :(得分:41)

好的,显然没有缓存是不够的。 以下是诀窍:

  <meta http-equiv="cache-control" content="no-cache, must-revalidate, post-check=0, pre-check=0" />
  <meta http-equiv="cache-control" content="max-age=0" />
  <meta http-equiv="expires" content="0" />
  <meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
  <meta http-equiv="pragma" content="no-cache" />

答案 1 :(得分:2)

您可以使用以下代码在特定秒数后从直接输入浏览器地址栏的URL地址刷新或重新加载当前加载的索引页,从而迫使浏览器始终重新加载当前文档。在这种情况下,秒数已设置为5:

<meta http-equiv="refresh" content="5" />

请注意,将秒数设置为0会导致每次成功下载页面时都会立即自动重新加载页面。

答案 2 :(得分:1)

为此,您需要在此过程中执行一些服务器端编码。您可以使用PHP或ASP.NET等技术。我更喜欢用PHP编码,所以这是一个基于PHP的例子。首先,确保你的INDEX被调用&#34; index.php&#34;而不是&#34; index.html&#34;或&#34; index.htm&#34;。现在请注意以下代码并将其集成到index.php文件中,同时插入您自己的页面内容:

<html>

    <?php
        header("Content-Type: text/event-stream");
        header("Cache-Control: no-cache");
    ?>

    <head>
        <script>
            var sse = new EventSource("index.php");
            sse.onmessage = function(event) {
                document.write(event.data);
            }
        </script>
    </head>

    <body>

        <!-- Insert HTML Codes -->

        <?php
            flush();
        ?>

    </body>

</html>

答案 3 :(得分:0)

用Google搜索并在本网站上发布。 maby这有助于:http://code.tutsplus.com/tutorials/4-ways-to-auto-refresh-your-browser-when-designing-new-sites--net-13299 希望有所帮助,807

相关问题