我意识到这个问题可能已被多次询问过,但我找不到一个好的,最新的答案.我能找到的唯一指南是2005年,并且是在tomcat 5上.似乎很多操作系统路径都发生了变化.
我们的情况是这样的:
我们想在一台服务器上运行多个tomcat 7实例.每个tomcat提供不同的地址.例如,www.oursite.com应该从单独的tomcat服务test.oursite.com.因此,例如,基本的tomcat安装将位于/opt/tomcat/并且实例特定的目录(这是我可以从那个旧教程中得到的)将进入/home/user1/some/path/并且/home/user2/some/path所有内容都很好地分离.
任何人都可以指向一个好的教程,或者在这里解释设置它的步骤?我对apache设置有点新意.
这样做有什么优点/缺点吗?单个tomcat实例会更好吗?我们需要能够一次一个地关闭网站而不会相互影响.此外,我们的DNS提供商阻止我们设置秘密重定向,因此我们必须通过apache来获得良好的URL,而不是直接重定向到tomcats.
谢谢
我相信你有2个问题:
对于1.以下是关于如何在同一服务器中运行多个tomcat实例的非常好的教程:http://java.dzone.com/articles/running-multiple-tomcat,但是你应该这样做吗?答案是"它取决于".如果你有一个超级强大的盒子,它没有得到充分利用,你应该.它还取决于您为每个站点运行的应用程序类型.它肯定会帮助你"一次一个地关闭网站,而不会相互影响".使用apache httpd配置,我将在下一节中介绍,您也可以在不同的机器(物理或虚拟机)上运行每个站点.
对于2.在这种情况下,您只需要配置apache httpd来执行虚拟主机并使用ajp连接到tomcat.
<VirtualHost *:80>
ServerName www.oursite.com
ProxyPass / ajp://tomcat.oursite.com:8009/www retry=5
ProxyPassReverse / ajp://tomcat.oursite.com:8009/www
</VirtualHost>
<VirtualHost *:80>
ServerName test.oursite.com
ProxyPass / ajp://tomcat.oursite.com:8010/test retry=5
ProxyPassReverse / ajp://tomcat.oursite:8010/test
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
在上面的配置中,您需要配置www.yoursite.com和test.yoursite.com的DNS条目以指向同一主机.它还假设您在同一主机tomcat.oursite.com上的不同tomcat实例上运行www和测试 webapps,一个在ajp端口8009上,另一个在ajp端口8010上.您还可以将其更改为其不同的服务器拥有.它非常灵活.仅供参考,以下是如何在tomcat中配置ajp:http://tomcat.apache.org/tomcat-6.0-doc/config/ajp.html
| 归档时间: |
|
| 查看次数: |
7493 次 |
| 最近记录: |