在我一直在编码的基于 php 的应用程序中,我有以下一小段代码:
if (isset($_SERVER['QUERY_STRING'])) {
header("Location: " . $_SERVER['QUERY_STRING']);
}
在我的应用程序中,我使用框架集和框架。此代码存在于主要内容区域框架中,并且在 IE 中执行时,会创建一个无限循环,除非我手动停止加载,否则会终止浏览器。
此代码的目的是检测是否有附加到 url 的查询字符串,如果有,则重定向到该查询字符串。我主要使用 chrome 和firefox进行开发,今天决定在 IE9 中进行测试。我没有在任何以前的版本中测试过它,但到目前为止,这种行为只发生在 IE 中,坦率地说,我很难理解为什么会发生这种情况。我在这里和互联网上搜索过类似的问题,但到目前为止还没有骰子。
编辑
正如我在之前的编辑中提到的,我使用框架集和框架来控制界面。左边的框架,一个侧边栏,包含与主“内容”区域框架的基本目标的链接。内容区域框架的内容包含将查询字符串附加到父窗口的 url 的 javascript,以便在访问索引页面时(存在查询字符串),它将内容框架重定向到该特定页面。
这在 Chrome 中运行良好。不是 IE(或 firefox,我在本次编辑时才发现)。即重定向到索引页面,包含框架集的页面,它永远这样做,在侧边栏之后创建侧边栏。