Coldfusion 当前正在处理 *.cfm 和 *.html 页面。如果我请求一个不存在的页面,例如 www.example.com/sadfasdfasd.cfm,IIS 仍会将请求传递给 Coldfusion 处理程序,而不是定向到 IIS 404 错误页面。Coldfusion 处理程序以 Debugger 页面响应,指出找不到文件。在将文件传递给处理程序之前,如何让 IIS 检查文件是否存在。如果它不存在,我希望它显示 404 错误页面。目前我的错误页面设置为提供本地和远程的详细错误。
问问题
756 次
2 回答
1
尝试将httpErrors条目添加到您的根 web.config 文件,如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<httpErrors errorMode="Custom">
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" path="404.html" responseMode="File" />
</httpErrors>
</system.webServer>
</configuration>
您的自定义 404.html 页面也应该位于根文件夹中。
于 2012-12-04T21:11:23.953 回答
1
如果您进入 IIS 并关闭详细的错误消息,它将显示 IIS 错误,而不是让 Coldfusion 处理它。
如果您有权访问 IIS 管理器,请转到站点 > 错误页面 > 右侧的“编辑功能”。您可能也可以将等效代码放入您的 web.config 文件中来处理此问题。
您可以根据需要选择任何其他选项。
请注意,这也是允许您从coldfusion 的调试器中查看coldfusion 错误的功能。
于 2012-12-03T17:08:21.003 回答