-1

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

但消息仍然存在

4

3 回答 3

0

我通过使用解决了这个问题

BrowserMatch MSIE force-no-vary 

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

于 2013-05-28T09:28:54.617 回答
0

设置未来的到期日期:

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

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

于 2013-02-08T08:08:24.040 回答
0

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

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

session_start();
if( $_POST) {
  $_SESSION['postdata'] = $_POST;
  header("Location: ".$_SERVER['REQUEST_URI']);
  exit;
}
if( $_SESSION['postdata']) {
  $_POST = $_SESSION['postdata'];
  unset($_SESSION['postdata']);
}
于 2013-02-08T08:11:02.560 回答