Response.Redirect转到错误的目的地

时间:2012-01-31 17:43:57

标签: c# .net response.redirect network-traffic

我正在使用c#.NET网站,用户可以在该网站上点击链接,并将其重定向到我们也拥有的单独网站中的另一个网页。代码很容易理解,有一个开关后跟Response.Redirect(the_url_we_want_to_go_to)的调用。

我已多次调试它,我可以确认当调试器点击此重定向行时参数是正确的。它指向这个其他网站的QA版本。我要说qa.samplesite.com。但是,浏览器不会去那里。相反,浏览器会点击测试环境。让我们称之为test.samplesite.com。这就是问题所在。

据我所知,这两个独立的网站上的应用服务器之间有一百万个东西,但也许你们其中一个人之前已经看过这样的东西。更具体地说,有没有办法在调试器中捕获出站流量,或者有没有办法在应用服务器本身(在IIS中)查看出站流量?我熟悉拦截httpmodules内部的入站流量。也许这不是一个stackoverflow问题......

感谢您的帮助!

3 个答案:

答案 0 :(得分:2)

使用非常好的HTTP嗅探器“Fiddler”。它将允许您查看所有HTTP请求。你应该确认a)重定向目标是正确的(它可能会在后面的请求管道中被覆盖.Response.Redirect不是最后的单词)和b)你没有第二个重定向在第一个之后。< / p>

答案 1 :(得分:0)

您可以尝试将Response.Redirect的重载用作

Response.Redirect(“url_here”,true);

这将停止当前页面上的响应(因为endResponse设置为true)并重定向到网址。

如果您仍有问题,则可能是某些名称解析错误。

检查您在这里找到的Windows目录中的主机文件

<强> C:\ Windows \ System32下\驱动程序\等\主机

希望这样做。

答案 2 :(得分:0)

我终于找到了类似的问题。这很傻。我复制了一些.aspx页面进行了微小的修改。我试图重定向客户端的页面,它的“CodeBehind”设置错误。所以它重定向到了正确的页面,但从另一个页面加载了CodeBehind!