0

我有一个运行多个应用程序的 Tomcat 6 服务器,在其中一个应用程序中,JSP 引用 ColdFusion 项目中的链接。在生产中,我们有 Apache 设置来将 DocumentRoot 更改为 ColdFusion webroot,但是由于我们只运行 Tomcat,我不能这样做(即我们的系统没有 httpd.conf 或 apache2.conf 文件)。我尝试在上下文文件中设置 docBase 以指向 ColdFusion 项目 webroot,但这不起作用,因此我在 tomcat webroot 中设置了符号链接。这正确链接到页面,但不是解析页面,而是显示 ColdFusion 代码。

除了通过管理界面将设置更改为指向我想要的数据库外,我对 ColdFusion 没有任何经验。

Tomcat 根目录:

webapps/ (tomcat webroot)
    cfProject/www/ (ColdFusion webroot)
    otherProject/pages/*.jsp

谁能帮我?如果您需要更多信息,我会随时更新问题。

更新:ColdFusion 版本:9

更新:删除了应用程序设置和符号链接的上下文,但 ColdFusion 源代码仍在输出并显示在页面上,而不是正在运行的代码并显示结果。

更新:我已经安装了 apache2 并将其链接到 tomcat,它现在可以正确连接到 ColdFusion 并从 JSP 页面加载所有 .cf 文件,但是 ColdFusion 页面仍然以纯文本显示。似乎通过 ProxyPass 重定向的冷融合页面正在工作,但来自 DocumentRoot 位置的页面却没有。如果我弄明白了会更新。

更新:最后让它工作了,我必须小心 ProxyPass 规则的顺序,所以一旦我把它整理出来,让 tomcat 和 apache 重新启动,页面就开始正确通过了。感谢您的所有输入彼得。

在此先感谢,阿列克谢蓝。

4

1 回答 1

1

最后,我安装了 Apache2 并设置了代理 ajp 以连接到我的 Tomcat 应用程序,监听端口 80。Tomcat 有一个连接器可以自动执行此操作,所以我没有任何问题。然后,在启用站点的默认虚拟主机中,我将 DocumentRoot 更改为指向我的 ColdFusion 项目的基础。(不确定这是否需要,但它不会受到伤害)。然后,同样在默认虚拟主机中,我添加了 ProxyPass 规则以将不同的 URL 连接到 ColdFusion。让我难过一段时间的一点是添加一个指向根 URL 的规则:

ProxyPass / /ColdFusion/www

因为 ProxyPass 规则都已处理,所以它弄乱了 URL,导致找不到页面等。一旦我修复了这个并重新启动,我就被排序了。

再次感谢彼得在这方面的帮助。

于 2013-03-08T15:41:21.163 回答