网站(通过 Apache ProxyPass / ProxyPassReverse 的 IIS)间歇性地提供错误内容

网站(通过 Apache ProxyPass / ProxyPassReverse 的 IIS)间歇性地提供错误内容

我有一个 IIS 网站,该网站通过 Apache(ProxyPass 和 ProxyPassReverse - 这种奇怪配置的原因是历史原因)。Apache 位于其他公司代理服务器后面。该网站有静态文件和一个用于提供 JSON 的 WebAPI 部分的虚拟目录。

用户有时会得到错误的内容 - 例如,访问主页会返回主页上链接的图像、网站上的其他 html 页面或一些 JSON(来自 WebAPI)。主页已关闭缓存。

这种情况通常发生在服务器承受压力(数据库冻结)时,但在其他情况下也会发生(但很少发生),但频率或一致性不足以进行调试。

IIS:版本 6.1

Apache:版本 2.2.13

什么原因可能导致这个间歇性问题,或者有什么好方法可以查明发生了什么?

答案1

可能是“错误”页面重定向到主页。或者只是显示主页。这也解释了为什么当服务器负载很高时会出现此问题。我会检查 IIS 配置。

以下是我以通用方式调试问题的方法。

我会尝试隔离问题。为此,我会记录以下路径上的流量:

  • 网络客户端 - Apache
  • 阿帕奇-IIS

然后我会检查发生了什么。并尝试匹配请求和响应。您可以使用任何网络嗅探器记录流量,并使用 Wireshark 进行分析。您还可以使用以下工具记录来自托管交换机的流量SPAN 或 RSPAN

然后我会尝试重现该问题。您可以克隆机器并使用负载测试软件测试克隆,例如JMeter。检查 Web 服务器的错误日志。尝试找出您达到的限制。可能是连接池限制、超时……

相关内容