环境:AWS / Microsoft Windows Server 2019 VM
一些 .NET 应用程序在虚拟机上运行(作为 Windows 服务),它们发出各种 HTTP 请求。其中一个还使用 MQTT(通过 MQTTnet)将事件从外部服务中继到不同的 HTTP API。
一切都会按预期运行几天,直到最后来自应用程序的 HTTP 请求开始超时。
Windows 事件查看器每隔几分钟就会显示以下错误:“WinHTTP Web 代理自动发现服务因以下服务特定错误而终止:无法创建端点映射器数据库条目。”
此时,似乎任何 Win32/.NET 应用程序都无法执行 HTTP 请求,包括 IE 等——但 CURL 除外。同样,其他网络连接和协议似乎都很好。我猜想这可能是由于 WinHttp(或其他低级 Win32 HTTP 服务)的问题造成的?我花了一些时间研究 Web 代理自动发现服务,并试图了解它为什么会突然开始失败(以及它是原因还是结果),但我在网上没有找到任何东西。
我还没有找到可以修复此情况的纠正措施(重新启动服务、使用 netsh 重置等)。只有完全重新启动 Windows 似乎才能解决此问题。此时 WinHTTP Web 代理自动发现服务将再次正常运行,http 请求将再次工作,等等。
我甚至很难找到从哪里开始解决这个问题。
答案1
我也遇到过同样的问题。在遇到问题时,我禁用了“WinHttpAutoProxySvc”和“iphlpsvc”服务。“iphlpsvc”服务依赖于“WinHttpAutoProxySvc”,并通过 IPv4 (6to4) 提供 IPv6 连接。从上个月到现在,我没有发现此操作存在任何问题。