IIS 7.5 自定义 503 错误页面

Posted

技术标签:

【中文标题】IIS 7.5 自定义 503 错误页面【英文标题】:IIS 7.5 Custom 503 error page 【发布时间】:2014-05-14 07:22:05 【问题描述】:

我有一个使用 IIS 7.5 上部署的 asp.net 和 WebAPI 的站点。正常的网站使用率是稳定的,但偶尔会出现使用率非常高的突发性高峰,并且用户的响应超时非常慢。目前没有提高性能的选项,客户要求快速修复涉及自定义的 503 错误页面,该页面与网站的其余部分外观相同。

单个 IIS 服务器位于负载平衡器后面,并且可以选择添加第二台服务器,纯粹用于在站点负载过重时提供静态错误页面。有一个解决方案的建议,其中缓慢的响应触发所有后续请求转到静态服务器并获取自定义 503 错误页面,直到使用量消退。

据我所知,无法自定义 IIS 在其请求队列已满时自动提供的默认 503 错误页面。

我在 SO 上看不到有关如何解决此类问题的任何信息 - 谁能帮忙?

【问题讨论】:

【参考方案1】:

负载平衡器使用探针来检查节点是否正常运行。一种可能的解决方案是制作自己的探测器,检查节点上的负载是否已达到定义的阈值。如果是这样,那么探针(您的探针)将向负载均衡器返回 HTTP 500。如果负载均衡器从探测器接收到此错误代码,则它不会将请求转发到该节点。当未达到阈值时,探测将返回 HTTP 200。

【讨论】:

以上是关于IIS 7.5 自定义 503 错误页面的主要内容,如果未能解决你的问题,请参考以下文章

503 服务不可用没有被任何 IIS 错误页面或 ASP.net 错误页面处理

自定义异步 HTTP 处理程序仅在 IIS 7.5 集成模式下生成错误 500 - 为啥?

如何在 IIS 中创建多个自定义 503 页面

如何创建自定义 Apache 503 错误页面

从 servlet java 抛出的自定义 503 错误页面

apache tomcat 503 自定义错误页面