如果我的 ColdFusion 脚本中有错误,我会从 IIS 而不是 ColdFusion 收到 500 错误消息。仅当我在 URL 中提供文件名时才会发生这种情况,并且如果我打开没有脚本名称的 URL(这将打开 index.cfm)则不会发生这种情况。
例如:
- IIS 错误:http ://www.example.com/index.cfm
- IIS 错误:http ://www.example.com/foobar.cfm
- Coldfusion 错误:http ://www.example.com/
我可以在我的 3 个 ColdFusion 平台中的 2 个上重现此问题:
- 工作:带有 ColdFusion 10 Update 12 的 IIS 7.5(带有更新的连接器)
- 不工作:带有 ColdFusion 10 Update 12 的 IIS 8(带有更新的连接器)
- 不工作:带有 ColdFusion 11 的 IIS 8.5
我的 index.cfm 和 foobar.cfm:
<!--- provoke a coldfusion error --->
<cfset foo
我的 web.config:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<httpErrors errorMode="Custom" existingResponse="PassThrough" />
</system.webServer>
</configuration>
对我来说,带有 IIS 8 和 IIS 8.5 的 ColdFusion 连接器似乎存在问题。