![IIS 对某些 URL 返回空主体并带有 200 响应](https://linux22.com/image/785845/IIS%20%E5%AF%B9%E6%9F%90%E4%BA%9B%20URL%20%E8%BF%94%E5%9B%9E%E7%A9%BA%E4%B8%BB%E4%BD%93%E5%B9%B6%E5%B8%A6%E6%9C%89%20200%20%E5%93%8D%E5%BA%94.png)
我在 IIS 上遇到了一个非常奇怪的问题,任何包含某些关键字(例如,卡、赌注、贷款、珠宝)的 URL 都会返回空白页。这是一个 200 响应,IIS 标头完整无缺,但响应主体为空。
这适用于服务器上的所有网站,我尝试设置一个包含两个文件的小型测试网站:index.html 和 card.html - index 运行正常,但 card 出现的情况与上述完全相同。所以这不是应用程序问题。
该请求由 IIS 记录,并声称返回非 0 字节数。如果我设置自定义响应标头,该请求将顺利通过。如果我直接在服务器上访问该站点,也会发生这种情况。因此似乎没有防火墙阻止它。只是删除了响应主体。
我已经设置了失败请求跟踪 - 我不知道我在那里寻找什么,但我看不到任何明显的错误。
没有自定义 IIS 模块(全部位于 %windir% 或系统命名空间下)。没有请求过滤规则(除了标准的文件扩展名禁止列表和 .NET 隐藏段之外)。
我完全不知所措!如果有人遇到过类似的事情,或者知道任何可以做到这一点的程序,或者知道下一步该怎么做,我很乐意听听!
答案1
问题原来是某个恶意软件将自身安装为名为 HTTPCacheLog 的 IIS 模块。我删除了该模块(并删除了 inetsrv 文件夹中的 DLL),现在一切又恢复正常了。