我正在 win2003 服务器上从 ACF8 迁移到 Railo4/Tomcat。我长期以来一直使用 IIS 在同一域中创建多个站点。
mydomain.com for production
mydomain.com:1001 for staging
mydomain.com:2002 for dev
mydomain.com:2003 for dev
mydomain.com:2004 for dev
在带 ACF 的 IIS 中,这一直工作正常,但在 Railo 和 Tomcat 中它不起作用。我尝试添加
<Host name="mydomain.com" appBase="webapps">
<Context path="" docBase="D:\website\prod\" />
</Host>
<Host name="mydomain.com:1001" appBase="webapps">
<Context path="" docBase="D:\website\stage\" />
</Host>
<Host name="mydomain.com:2002" appBase="webapps">
<Context path="" docBase="D:\website\dev1\" />
</Host>
<Host name="mydomain.com:2003" appBase="webapps">
<Context path="" docBase="D:\website\dev2\" />
</Host>
<Host name="mydomain.com:2004" appBase="webapps">
<Context path="" docBase="D:\website\dev3\" />
</Host>
但我似乎无法让站点正确运行。我对 Apache 没有太多经验,所以 Tomcat 非常陌生,我似乎无法弄清楚这一点。因此,我们将不胜感激。
旁注: 此安装还使我的 OWA 交换 Web 界面停止工作,这看起来很奇怪,因为 OWA 不涉及 cfml。 Exchange 本身仍然有效(我已经用 outlook 成功了)但是网络界面不起作用。
最佳答案
我不确定您是否可以使用不同的端口来做到这一点,但如果可以的话,您肯定需要为每个端口添加更多的连接器元素。
IMO 更好的方法是使用不同的主机名:
<Engine name="Catalina" defaultHost="production">
<Host name="production" appBase="webapps">
<Alias>mydomain.com</Alias>
<Alias>www.mydomain.com</Alias>
<Context path="" docBase="D:\website\prod\" />
</Host>
<Host name="staging" appBase="webapps">
<Alias>staging.mydomain.com</Alias>
<Context path="" docBase="D:\website\stage\" />
</Host>
<Host name="dev1" appBase="webapps">
<Alias>dev1.mydomain.com</Alias>
<Context path="" docBase="D:\website\dev1\" />
</Host>
...
</Engine>
您当然可以在您的开发机器上设置主机文件来解析 staging.mydomain.com、dev1.mydomain.com 等,而不是 DNS 条目。
关于tomcat - 在不同端口上运行 Railo/Tomcat IIS6 站点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20171344/