使用 NTLM 避免每个请求都出现 401 响应

使用 NTLM 避免每个请求都出现 401 响应

这里我们有一个使用 ASP.NET 3.5 应用程序NTLM基于 Windows 身份验证。系统运行在实际上分布在不同地理位置的专用网络(通过 VPN 连接)上。

我们现在正在尝试优化网站的性能。由于 NTLM 的工作方式,对 IIS 的每个新请求都由 3 个不同的请求组成,而前 2 个是 401 响应。我们试图将这些请求的数量最小化到仅在会话开始时。我们找到了在提高 IIS 6.0 应用程序的性能。不幸的是,它没有改变任何东西,我们不断收到这个 401 响应(这会浪费时间)。

为了查看流量,我首先使用了Fiddler应用程序。不知何故,当我使用 Fiddler 时,会话开始时只有 1 个身份验证过程(正如我所希望的那样),但是当我关闭 Fiddler 应用程序并通过Wireshark我可以看到每个请求仍然有这个 401 响应。

客户端使用 Internet Explorer 6、IIS 版本 6。

我们如何才能解决这个问题?

答案1

只是一个想法,但由于 Fiddler 是一个代理,它可能会保持你的 TCP/IP 连接打开。请参阅Fiddler 帮助页面关于重复使用与服务器的连接重复使用客户端连接

你还应该确保已经选中“使用 HTTP 1.1”和“通过代理使用 HTTP 1.1”,并仔细检查你的KeepAlive 超时注册表设置确实不低。

相关内容