【发布时间】:2015-04-15 15:28:30
【问题描述】:
当我的 ColdFusion 服务关闭时(这种情况很少见),我需要一个可以显示的“漂亮”默认 HTML 页面。 ColdFUsion 关闭时的具体状态错误是503 错误。
基于this question,似乎很难覆盖 503 错误消息的默认显示。我不是 ASP/.NET 开发人员,所以我不确定同样的情况是否会影响我,因为无论如何我的网站都没有活动的应用程序池。
我尝试添加自定义页面并使用“在此站点上执行 URL”将其链接到 503 错误。这删除了先前的错误页面,但没有呈现 HTML 页面(我验证加载页面本身确实有效)。我尝试了“从静态文件插入内容”选项,这导致了一个错误(我尝试追踪细节,但无法在事件查看器或 IIS 日志中找到它)。
所以,我有两个问题:
- 没有有效的 .Net 应用程序池,是否可以 有一个自定义错误页面来处理由于服务引起的 503 错误 正在关闭(我假设除了 ColdFusion 之外的其他应用程序平台 可能有类似的行为)
- 处理错误的首选方法是什么 -- 执行 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