ie浏览器中的后退按钮



每当我按下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");

但消息保持

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

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

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

设置未来的到期日期:

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

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

我使用解决了这个问题

BrowserMatch MSIE force-no-vary 

在我的.htaccess文件中。Vary标头是由mod_rewrite生成的,ie无法很好地处理它。

相关内容

  • 没有找到相关文章

最新更新