2014-02-10 61 views
0

在将此问题标记为重复项之前,请注意我已经看到类似的Stack Overflow问题,但是他们都没有能够为我解决问题。如何在使用浏览器的“返回”功能时强制刷新页面?

我有一个创建一个自定义目录这里列出了PHP脚本:

http://snaps.vertigofx.com/index.php

这些特定的文件夹是用于存储图像。我发现我经常会点击一张图片来查看它,而当它打开时,我会上传一张新图片。当我在浏览器中浏览“后退”以获取新上传的图像时,我还需要刷新该页面才能显示在文件列表中。

有什么办法,无论是通过PHP,Javascript,甚至Firefox的设置/扩展,我可以强制清单时刷新我导航回来? (请注意,我希望这是特定网站,所以我不想使用浏览器设置,将使此效果全球)

我已经尝试将此添加到PHP脚本,因为它是接受的答案在一个类似的问题,但它没有工作:

header("Cache-Control: private, must-revalidate, max-age=0"); 
    header("Pragma: no-cache"); 
    header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // A date in the past 

这工作:

虽然在How to force page not to be cached in PHP?的问题是不是真的我的问题的副本(在该职位的提问者是指一个单页面,而我需要一个涵盖多个页面的解决方案),我能够f在那里寻求解决方案。这是高速缓存杀手头就像我以前可是有几行尝试:

header("Cache-Control: no-store, no-cache, must-revalidate"); // HTTP/1.1 
header("Cache-Control: post-check=0, pre-check=0", false); 
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past 
header("Pragma: no-cache"); // HTTP/1.0 
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); 

自白:虽然这个工作,似乎对代码的更改似乎只在浏览器中,以反映实际删除该文件后,从服务器尝试在浏览器中访问它,然后上传新文件。由于某种原因,简单地覆盖文件不起作用。正因为如此,我以前在这方面的尝试很有可能是我认为无效的有效解决方案。我对任何人浪费时间表示歉意,并感谢您的帮助。

+0

这不是该问题的重复。那个人想知道如何强制刷新一个* specific *页面,这就是为什么解决方案有一个标题重定向到该页面可以工作。我没有使用一个特定的页面。不过,我会玩头重定向技巧和一些路径变量,看看它是否可以让我找到解决方案。 – vertigoelectric

+0

我发现了一个可以工作的解决方案,它在该页面上。我会更新我的帖子以包含解决方案... – vertigoelectric

回答

0

您可以创建一个<a>链接href回到您的目录列表页面,最后使用随机GET参数。

<a onclick="window.location='http://snaps.vertigofx.com/index.php?p=' 
     + Math.random().toString(36).slice(2);return false;" 
     href="#">back to custom directory</a> 

HTML link that bypasses cache?

或者,您可以将您的目录页面使用window.location.reload(forceGet)方法,它需要的地方,如果设置为true布尔参数上插入JavaScript,强制浏览器从服务器重新加载,而不是缓存。您可以使用浏览器上的后退按钮在页面加载时调用它,但是您需要创建它才能加载一次。您可以使用散列(#):

window.onload = function() { 
     if(!window.location.hash) { 
      window.location = window.location + '#updated'; 
      window.location.reload(true); 
     } 
    }; 
+0

这不起作用,因为我从浏览器中查看图像而不是另一个网页返回。 – vertigoelectric

+0

更新了我使用浏览器的'后退'按钮的答案。 – transcranial

相关问题