【发布时间】:2010-10-06 06:46:29
【问题描述】:
在我正在进行的项目中,我使用 HTTP 标头在成功登录后将用户重定向到首页;
header("Location: http://example.com/index.php?");
exit(0);
编辑:在 url 中添加问号以显示问题
这在所有经过测试的浏览器中都可以正常工作 - 但是,在 Windows、mac 和 debian 上的 Firefox 3.0.6 中,它无法正确设置超链接。每个超链接都指向重定向指向的同一个 URL,完全忽略了“href”属性。刷新页面无济于事 - 我必须手动重新输入 URL 并按 Enter 以使超链接重新开始工作。
我在 IE6、IE7、Opera 和 Safari 中都试过了,效果很好。我假设我实现重定向的方式有问题,有人能指出我正确的方向吗?
【问题讨论】:
-
您是否也设置了 HTTP 301/302 状态?
-
我没有手动设置,没有。但根据 php 手册,这应该是自动完成的 (se2.php.net/header)
-
它是你的脚本输出的第一个字符串吗?
-
是的,在 header() 调用之前没有打印任何其他内容,之后直接停止执行。
-
您是否使用 HTML 元素 BASE 设置了基本 URL?或者您是否使用了一些可能导致此行为的扩展?
标签: php firefox redirect hyperlink