gpt4 book ai didi

iis - ColdFusion 10 更新 11 404 处理程序未触发

转载 作者:行者123 更新时间:2023-12-01 06:32:18 26 4
gpt4 key购买 nike

我知道 CF 10 在 404 处理方面存在许多问题。这似乎与其他报告不同。细节:

  • Win2k8 R2/64 和 IIS7.5
  • 从单独服务器上的相同配置升级。唯一的区别是 CF9 -> CF 10。在 CF9 上一切正常。 Adobe CF9 Lockdown 在原始服务器上实现,CF10 Lockdown 在此服务器上实现。
  • 缺少在 CF Admin 中设置为/404.cfm 的模板处理程序,它应该转换为 Cfusion 根 (c:\ColdFusion10\cfusion\wwwroot)。
  • IIS 已被配置为跟踪失败的 404 请求
  • IIS 404 处理是默认的(最初执行 CF URL,但为了简化调试而删除)。
  • 缺少模板处理程序所在的 Coldfusion webroot 是默认安装位置
  • IIS 站点根目录完全不同:c:\Other\Place\SiteRoot\
  • 站点范围的错误处理程序也在同一个 ColdFusion webroot 的 CF Admin 中设置并按预期工作。

  • 404.cfm 很简单:
    <cfheader
    statuscode="404"
    statustext="Not Found">
    <h1>404</h1><p>Page not found</p>
    <cfoutput>#now()#</cfoutput>

    输入错误的 url [domain]/foo.cfm 应显示上述模板。相反,我得到一个 IIS 错误屏幕。 CF 缺少模板处理程序被忽略。 IIS 失败的请求跟踪说 url 是
    http://[mydomain]:80/jakarta/isapi_redirect.dll

    和详细 View 显示在步骤 1
    RequestURL="http://[mydomain]:80/foo.cfm

    我已经看到很多围绕 CF10 和 404 的问题,但从来没有完全忽略丢失的模板处理程序分配。在 CF9 中,这将按预期生成输出。有人见过这样的吗?

    编辑:
    我还尝试配置它以匹配我正在运行的不同 CF9 服务器:将 CF 映射添加到站点的 Web 根目录。然后将丢失的模板处理程序放置在网站的根目录而不是 CF 默认的 Web 根目录中,最后在 cfadmin 中使用映射文件夹指向网站根目录中丢失的模板处理程序。同样的问题。在 CF9 中工作正常,在使用 CF10 时根本不工作。

    编辑2:
    正如 Miguel F 在评论中指出的那样,您可以关闭 CF Admin 中的 HTML 错误代码,这将使 Missing Template Handler 触发……但是您会得到一个 200 header 。显然 cfheader 语句被忽略,因为我尝试将 cfheader 放在模板的开头和结尾...仍然产生 200。视觉上很好,但就 SEO 而言,这是一场灾难。刚刚看了看,我的 CF9 服务器不需要取消选中此设置以使其处理程序正常工作。

    编辑3
    Dana Kowalski 的解决方案向公众显示了详细的 IIS 错误,因此对于 404,比如说,一个虚构的扩展 (foo.xyz),屏幕将显示文件路径。默认行为是不显示详细错误,除非在本地运行模板,并向访问者显示自定义错误页面。 CF 错误模板在该设置下应该可以正常工作。

    可能的解决方案
    作为调试此问题的一部分,我退回到 ColdFusion 9,并且 may have discovered the solution在调试一个单独的相关问题时。

    最佳答案

    在 IIS 管理器中,单击相关站点。选择错误页面选项。选择右侧的“编辑功能设置”链接。检查是否选择了“详细错误”选项。

    如果您选择了另外两个中的任何一个,有时 IIS 7.x 将接管而不让 ColdFusion 处理它。

    关于iis - ColdFusion 10 更新 11 404 处理程序未触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18879758/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com