Tomcat 6 配备 Railo 3.3 主机和上下文精度

Tomcat 6 配备 Railo 3.3 主机和上下文精度

我正在尝试在本地开发机器上运行 Tomcat 6 和 Railo 3.3。我有使用 Adob​​e ColdFusion 的经验,因此想尝试一些新东西。

我已经在 中安装了 Tomcat d:\dev\tomcat6\

然后我下载了 Railo 的最新 war,将其重命名为 railoapplication1.war 并将其复制到d:\dev\tomcat6\webapps\并让其运行。

测试了一下,我可以在http://本地主机:8080/

和 Railohttp://本地主机:8080/railoapplication1

现在据我所知,以这种方式复制 war 文件相当于创建一个新的多服务器实例(在 Adob​​e ColdFusion 下)。完成后,我通常会使用连接器将网站链接到该实例。

这是我有点困惑的地方。我的主要目标是通过主 tomcat 绑定访问多个“实例”

localhost:8080/railoapplication1
localhost:8080/railoapplication2
...
localhost:8080/railoapplicationN

但我想将我的应用程序文件与此分开,而不使用 Apache 前端。

例如我希望 railoapplication1:8080 上的应用程序如下所示:

d:\dev\www\railoapplication1使用部署在d:\dev\tomcat6\webapps\railoapplication1

我尝试编辑 Tomcat 的 servers.xml,但没有成功。

<Host name="railoapplication1" appBase="webapps\railoapplication1"
  unpackWARS="true" autoDeploy="true"
  xmlValidation="false" xmlNamespaceAware="false">
    <Context path="" docBase="d:/dev/www/railoapplication1" />
</Host>

如果我这样做,我就可以浏览到

http://railoapplication1:8080/index.cfm(测试页)

但它根本没有被 Railo 捕获,我得到的是纯文本,而不是看到我的 CFML 被执行

<cfoutput>#now()#</cfoutput>

我肯定做错了什么,因为它看起来像一个非常标准的设置。

答案1

您混淆了appBasedocBase如果您将所有 Railo 实例放在中d:\dev\tomcat6\webapps\,则可以在 Tomcat 中配置虚拟主机,如下所示:

<Host name="railoapplication1" appBase="webapps"
  unpackWARS="true" autoDeploy="true"
  xmlValidation="false" xmlNamespaceAware="false">
    <Context path="" docBase="railoapplication1" />
</Host>

<Host name="railoapplication2" appBase="webapps"
  unpackWARS="true" autoDeploy="true"
  xmlValidation="false" xmlNamespaceAware="false">
    <Context path="" docBase="railoapplication2" />
</Host>

相关内容