【问题标题】:ColdFusion only serves default documentColdFusion 仅提供默认文档
【发布时间】:2020-12-30 23:33:05
【问题描述】:

在 IIS 中,我将以下内容列为默认文档

index.cfm 存在并在我导航到站点根目录时显示。

我一尝试https://localhost:1234/index.cfm,就会收到 404.0 错误

【问题讨论】:

  • 一切设置如何? wsconfig 运行成功了吗? 1234端口对吗?路径配置正确了吗?
  • 前后端口相同。
  • 尝试在站点上重新运行 WSConfig 实用程序。
  • 这就是为什么我对 SO 贡献不多的原因。合法的问题,合法的答案:所有负面评价。
  • 有一天会有人遇到类似的问题。他们会搜索它,他们会找到这个答案。否决票可能会让它更难找到,但当他们找到它时,它会改变他们的一天并让它变得更好。我可以删除我的问题,但那个人不会得到帮助。

标签: iis coldfusion coldfusion-2016


【解决方案1】:

您可以通过确保在您的系统上安装了 IIS 的两个必需组件来解决此错误。即:

  1. ISAPI 扩展
  2. IIS 元数据库和 IIS 6 配置兼容性。

首先,启动名为 Windows Features 的程序。您将在控制面板 -> 程序和功能下找到 Windows 功能。

当 Windows 功能启动时,浏览 Internet 信息服务下的功能层次结构并选择两个功能:ISAPI 扩展和 IIS 元数据库以及 IIS 6 配置兼容性。

ColdFusion 现在已准备好从 IIS 运行。但是,如果您在执行上述步骤之前已经安装了 ColdFusion,请继续按照“为 ColdFusion 配置 IIS”中提到的步骤操作:

为 ColdFusion 配置 IIS

如果您在安装 ColdFusion 8 或 9 后按照上述步骤操作,则必须运行 ColdFusion 附带的 Web 服务器配置工具来配置 IIS7,以便将所有 .CFM 文件映射到由 ColdFusion 处理。

以下文字直接来自ColdFusion安装指南:

1.通过选择开始 > 程序 > Adob​​e > ColdFusion 9 > Web 服务器配置工具来启动 Web 服务器配置工具。

  1. 点击添加。

  2. 在“服务器”弹出菜单中,选择要配置的主机名和服务器或集群名称。在 ColdFusion 服务器配置中,服务器名称始终为 Coldfusion。服务器配置上不提供集群支持。

  3. 在 Web 服务器属性区域中,选择 IIS 并指定网站。对于 IIS,您通常指定 All。

  4. 选择为 ColdFusion 应用程序配置 Web 服务器选项,然后单击确定。

  5. 将 CFIDE 和 cfdocs 目录从 cf_root/wwwroot 复制到您的 Web 服务器根目录。此外,将应用程序的 CFM 页面从 cf_root/wwwroot 复制到 Web 服务器根目录。在多服务器配置中,这些文件位于 jrun_root/servers/cfusion/cfusion-ear/cfusion-war 目录下。

ColdFusion 现在已准备好在 Web 上提供页面;

以上内容来自blog

【讨论】:

  • 该博文专门用于将在 JRun 上运行的旧版本 (8/9) ACF 与 IIS7 连接起来。 OP 使用的是 ACF 2016,它在 Tomcat 上运行,并且应该在 IIS 10 上。
  • 我可以提供单个网页,即默认文档。我只是无法得到其他任何东西。如果指定名称,我也看不到默认页面。
【解决方案2】:

This answer 提到 IIS 8 仅响应默认文档列表中的最后一个默认文档的问题。您是否将 IIS 10 与 ACF 2016 一起使用?

如果您现在收到此回复:

  • https://localhost:1234/index.cfm 404.0
  • https://localhost:1234/default.cfm 200

这会返回什么?只有default.cfm

  • https://localhost:1234/

删除 default.cfm 的条目并重新启动 IIS。这会回复index.cfm 吗?如果您无论如何都不打算将该文件用作默认文件,则无需将其定义为这样。

您能否发布该站点的web.config 文件,仅发布相关部分,以确认值?是否会在 UI 中显示全局默认值,但实际上并未继承特定站点的全局默认值?

<configuration>
<system.webServer>
    <defaultDocument enabled="true">
        <files>
            <add value="index.cfm" />
        </files>
    </defaultDocument>
</system.webServer>
</configuration>

【讨论】:

  • 这与我的问题完全相反。我可以看到默认文档,但我看不到其他任何内容。如果我指定它的名称,我也不能使用默认文档。
【解决方案3】:

这是解决问题的解决方案。

如果去IIS,有一个虚拟目录/jakarta

与虚拟目录关联的物理路径是ColdFusion2016\config\wsconfig\1

通过添加D: 驱动器,一切正常。

【讨论】:

  • 您应该使用 WSConfig 工具来管理 /jakarta 虚拟目录。如果它没有正确设置路径,那就是错误的。
猜你喜欢
  • 2011-06-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多