这是一个登录页面。验证后,用户将被重定向到主页:
@header("Content-type: text/html; charset=utf-8");
@header('Location: index.php');
@header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
@header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Date in the past
但如果IE6页面变成空白!怎么样?它只是第一次发生;之后它会正常工作!
答案 0 :(得分:1)
为什么要抑制可能发生的警告/错误?我先说先摆脱@
,然后告诉我们究竟发生了什么。
答案 1 :(得分:1)
header()将不起作用。这包括空格,空行或其他。确保在调用header之前没有输出任何内容。
使用:
<?php
header('Location: index.php');
?>
不起作用
<?php
header('Location: index.php');
?>
并删除@,它会占用任何有用的信息标题试图给你。
答案 2 :(得分:0)
您还可以使用客户端的javascript重定向:
而不是:
@header('Location: index.php');
客户端重定向:
echo "<script>document.location.replace('index.php');</script>";
答案 3 :(得分:0)
我一直在寻找一个类似问题的答案给你一个小时左右。 IE6似乎有拉链内容的问题。简单地在我们的服务器上禁用mod_deflate修复了IE6的问题。特别是版本6.0.29似乎表现出这个错误。
查看http://www.contentwithstyle.co.uk/content/moddeflate-and-ie6-bug