【问题标题】:Custom Error Page in IIS 7.5 when a service (e.g. ColdFusion) is down当服务(例如 ColdFusion)关闭时,IIS 7.5 中的自定义错误页面
【发布时间】:2015-04-15 15:28:30
【问题描述】:

当我的 ColdFusion 服务关闭时(这种情况很少见),我需要一个可以显示的“漂亮”默认 HTML 页面。 ColdFUsion 关闭时的具体状态错误是503 错误。

基于this question,似乎很难覆盖 503 错误消息的默认显示。我不是 ASP/.NET 开发人员,所以我不确定同样的情况是否会影响我,因为无论如何我的网站都没有活动的应用程序池。

我尝试添加自定义页面并使用“在此站点上执行 URL”将其链接到 503 错误。这删除了先前的错误页面,但没有呈现 HTML 页面(我验证加载页面本身确实有效)。我尝试了“从静态文件插入内容”选项,这导致了一个错误(我尝试追踪细节,但无法在事件查看器或 IIS 日志中找到它)。

所以,我有两个问题:

  1. 没有有效的 .Net 应用程序池,是否可以 有一个自定义错误页面来处理由于服务引起的 503 错误 正在关闭(我假设除了 ColdFusion 之外的其他应用程序平台 可能有类似的行为)
  2. 处理错误的首选方法是什么 -- 执行 URL,包括静态文件,还是执行 302 重定向?

【问题讨论】:

  • 要解决您的一个问题,您的网站确实有一个应用程序池。在 IIS 下运行的所有网站都有一个分配给它们的应用程序池。这就是他们彼此隔离的方式。在 503 错误的情况下,“在此站点上执行 URL”对我来说没有意义。执行 URL 需要一个正常运行的服务,不是吗?我认为您需要使用“从静态文件插入内容”选项并为其创建一个 HTML 文件。不知道为什么这给了你一个错误。您是在自己进行更改时还是在您提出请求并收到 503 后收到错误?
  • 请求页面时出错。为已知 HTML 文件选择“插入静态文件”选项,然后重新请求该站点的主页后,我收到以下错误:“由于发生内部服务器错误,该页面无法显示。”
  • 我刚刚使用 IIS 8.0 成功测试了这个。我创建了一个简单的 HTML 页面并将其放在我网站的根目录中。在 IIS 管理器中,我为 503 添加了一个新的自定义错误页面。我使用了“从静态文件插入内容”选项并选择了我创建的 HTML 文件。我停止了我的 ColdFusion 实例,然后浏览了我的网站。我从我的 HTML 文件中看到了消息。您是如何测试创建 503 错误响应的?
  • 我又试了一次。尝试使用插入静态内容时出现以下错误:“web.config 文件的 system.webserver/httperrors 部分中不允许使用绝对物理路径。请改用相对路径。”然后我在应用程序配置文件中启用了绝对物理路径选项。但是,当刷新站点时,我得到了旧的“Macromedia”503 错误。就好像它忽略了我的 503 错误页面!
  • 另外,当 ColdFusion 服务停止时,我在返回已知 HTML 文件时遇到了极长的延迟——比如下载

标签: iis coldfusion custom-error-pages


【解决方案1】:

这可能很快就会到来,但您需要将 error_page= /{any html page} 添加到您的 isapi_redirect.properties 文件中。查看图片或链接。

isapi_redirect

【讨论】:

    猜你喜欢
    • 2013-07-31
    • 2014-05-14
    • 1970-01-01
    • 1970-01-01
    • 2017-02-16
    • 2020-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多