3

我们在工作不一致的页面上有一个简单的 Response.Redirect (IIS 6.0)。大多数情况下它会正确重定向,但我们收到一些用户抱怨说他们没有重定向,而是得到“302 对象移至此处”页面。该页面显示具有正确位置的标题信息。如果您单击“此处”,它将重定向到正确的页面。

任何想法为什么它会偶尔显示 302 消息?

4

3 回答 3

2

您可以尝试手动将响应的状态代码设置为 301。以下是一些可以帮助您的借用代码

Response.StatusCode = 301; 
Response.StatusDescription = "Moved Permanently";
Response.RedirectLocation = "RedirectionPage.aspx";
Response.Flush();

您还可以将 Server.Transfer() 用作最后的努力,或者输出一个简单的脚本,将窗口的位置设置为新的 url。

Page.ClientScript.RegisterStartupScript(Page.GetType
"RedirectScript", "window.location.href='RedirectionPage.aspx'", true);

虽然我想知道如果他们的浏览器不尊重原始重定向,他们的浏览器将如何处理 javascript。

你有关于这些人使用的浏览器的任何信息吗?

于 2009-05-28T19:20:04.487 回答
2

302 是 response.redirect 返回的代码。我还看到了一个做客户端的笔记

window.location = 'url'

但听起来确实像浏览器设置。

于 2009-05-28T19:24:31.390 回答
0

当缺少 Location 标头时,可能会发生这种情况。

于 2010-11-11T01:20:52.643 回答