ie浏览器中的后退按钮

时间:2013-02-08 07:58:55

标签: php internet-explorer http-headers

每当我按下IE的后退按钮时,浏览器显示消息“网页已过期”。

我有一个注册页面是reg.php,现在我已经在save_reg.php中保存数据,而不是按下后退按钮并显示消息“网页已过期”。

我试过以下代码:

header("Expires: Sat, 01 Jan 2000 00:00:00 GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
header("Cache-Control: post-check=0, pre-check=0",false);
session_cache_limiter("must-revalidate");

但留言仍然存在

3 个答案:

答案 0 :(得分:0)

将来设置到期日期:

header("Expires: ".date("D, d M Y H:i:s", time() + $desiredDuration)." GMT");

time返回自Unix Epoch以来秒数测量的当前时间,并以秒为单位添加所需时间,并使用date函数对其进行格式化。

答案 1 :(得分:0)

这意味着您要返回的页面是POST请求。它与标题完全无关。

摆脱这种情况的最简单方法是在开头使用以下代码:

session_start();
if( $_POST) {
  $_SESSION['postdata'] = $_POST;
  header("Location: ".$_SERVER['REQUEST_URI']);
  exit;
}
if( $_SESSION['postdata']) {
  $_POST = $_SESSION['postdata'];
  unset($_SESSION['postdata']);
}

答案 2 :(得分:0)

我使用

解决了这个问题
BrowserMatch MSIE force-no-vary 

在我的.htaccess文件中。 Vary标头由mod_rewrite生成,即不能很好地处理它。