为什么Response.Redirect(“”)在一个测试环境中而不是另一个测试环境中返回错误?

时间:2009-03-31 02:34:21

标签: asp.net iis response.redirect

我们正试图弄清楚如何修复第三方IV& V测试中发现的错误,我们无法在内部测试环境中重新创建错误。

我们已经确定错误是由于在尝试重定向到URL之前无意中将URL值设置为空字符串(“”)而引起的。因此,我们正在尝试执行Response.Redirect(“”)。

在外部测试环境中,这行代码会导致以下错误:

Internet Explorer cannot display the webpage

在内部测试环境中,只需重新加载当前页面。

服务器几乎相同 - 内部测试服务器与外部服务器具有相同的物理硬件,甚至运行外部服务器虚拟映像的副本。因此,所有Windows和IIS设置相同。

是否存在可能导致此类差异的物理网络,负载平衡或其他环境问题?

感谢任何想法。

1 个答案:

答案 0 :(得分:3)

我会使用Fiddler来查看来自服务器的HTTP响应,并确保它们完全相同。当你这样做时,你知道它是客户端或环境问题。下一步...

两个浏览器的地址栏中的URL是什么?更好的是...在IE中右键单击页面并查看Properites。你真的在这里看到了什么?在我的本地系统上测试Response.Redirect(“”)我得到这样的东西:“res://ieframe.dll/dnserror.htm# http://localhost/test.aspx”DNSERROR!嗯......很有意思!

另外,请考虑以下情况会发生什么: http://somelanname

...在“somelanname”是本地Intranet上的资源名称的环境中...然后当您尝试访问该URL时,会发生什么情况。我想你在这里也看到了同样的事情。