我们有一个站点,我们的生产服务器出了问题,但我的开发机器上没有出现问题,请求被中止(因此,零响应)。
每次它都会在 1 分 19 秒后失败,而我的开发机器上的请求大约需要 1 分 44 秒。
内容长度约为 650K,所以这应该不是问题。
生产环境是带有 IIS7 的 Windows 2008,开发环境是带有 IIS 7.5 的 Windows 7
具有相同的 web.config,但机器配置略有不同(尽管它们应该是安装的标准)
这可能是什么原因造成的?
查看访问日志时,该行显示响应 byt win32-code 995 中的 0 字节,应为 0,这是访问行的最后列:
sc-status sc-substatus sc-win32-status sc-bytes time-taken
200 0 995 0 76933
995 似乎与“线程中止”或其他内容有关,因此我确信是 IIS 中止了请求。即使在请求停止后,w3wp.exe 进程似乎仍会运行一段时间,因此我认为 Web 应用程序直到写入输出流时才会注意到。
编辑:现在尝试了不同的连接,似乎我的防火墙因为没有数据(过早)而断开了连接。因此出现 995 代码。
答案1
我有同样的问题,在我的情况下,网络适配器是导致 sc-win32-status 995 的原因。您在防火墙中做了哪些更改来防止这种情况发生?在设备管理器 => 网络适配器 => 属性 => 高级中,您可以设置几个与网络相关的设置
答案2
尝试检查 ASP.NET 中的“executionTimeout”设置。默认值似乎是 110 秒,这与您报告的类似:
http://msdn.microsoft.com/en-us/library/e1f13641(v=vs.100).aspx
这可能存在以下任何配置:
- 机器配置
- 根级 Web.config
- 应用程序级 Web.config
- 虚拟或物理目录级 Web.config
希望这可以帮助。