【问题标题】:Help with header() php帮助 header() php
【发布时间】:2010-06-18 21:49:30
【问题描述】:

您好,我想在按下后退按钮时从服务器刷新脚本。为此,我正在使用此代码:

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)仍在“缓存”页面。 任何帮助将不胜感激。

【问题讨论】:

    标签: php browser header http-headers


    【解决方案1】:

    我确信你实际上无法控制它。后退按钮与新请求完全不同,直到用户代理(在大多数情况下是 MSIE、FF、Chrome、Safari、Opera 等浏览器),并且很可能他们对什么都有自己的解释最终用户在按下后退按钮时想要。在很多情况下,甚至不涉及 HTTP 请求,并且 DOM 在导航离开之前就已加载。这包括在客户端进行的任何更改。

    简而言之:通过您已有的代码进行影响和提示是您能做的最好的事情。要获得“新鲜”页面,用户必须重新加载它(在大多数情况下按 F5)。您可以在您的页面上添加广告meta refresh 以尝试使该页面在允许它的用户代理中尽可能最新。

    【讨论】:

    • 感谢您的回答,我想我会发一条消息说:“您可能需要刷新页面才能使更改生效”....
    猜你喜欢
    • 1970-01-01
    • 2011-01-10
    • 2010-12-30
    • 2012-06-21
    • 2011-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多