您好我想在按下后退按钮时从服务器刷新脚本。为此,我正在使用此代码:
header( "Last-Modified: " . gmdate( "D, j M Y H:i:s" ) . " GMT" );
header( "Expires: " . gmdate( "D, j M Y H:i:s", time() ) . " GMT" );
header( "Cache-Control: no-store, no-cache, must-revalidate" ); // HTTP/1.1
header( "Cache-Control: post-check=0, pre-check=0", FALSE );
header( "Pragma: no-cache" ); // HTTP/1.0
但似乎浏览器(IE 8,FF 3.6)仍在“缓存”页面。 任何帮助将不胜感激。
答案 0 :(得分:3)
我确信你无法控制它。后退按钮与新请求完全不同,直到用户代理(在大多数情况下,像MSIE,FF,Chrome,Safari,Opera等浏览器),并且很可能他们都有自己的解释按下后退按钮时最终用户想要的。在很多情况下,甚至没有涉及HTTP请求,并且在导航之前加载DOM。这包括客户端进行的任何更改。
简而言之:对您已有的代码进行影响和暗示是您可以做的最好的事情。要获得“新鲜”页面,用户必须重新加载它(在大多数情况下推送F5)。您可以在网页上添加广告meta refresh,以尝试在允许该网页的用户代理中使网页尽可能最新。