如何在tomcat中部署多个java web应用程序,它将运行在不同的端口上? - 如何进行设置,以便不同的Web应用程序可以在不同的端口上运行 - 为实现此目的需要做什么?如何在tomcat中部署多个web应用程序,并运行在不同的端口上?
回答
你最好有多个tomcat安装。这会更容易。
我想你可以在server.xml
中注册多个<Connector>
s,然后过滤掉上下文,但这很乏味,听起来不对。
我想知道如何在一台tomcat服务器上做到这一点..我不想多个服务器。 – LetsSyncUp 2010-12-06 13:32:08
您将需要在server.xml文件(tomcat_home/conf)中设置另一个服务。如果你还没有改变你的服务器上的文件,你应该已经有一个叫卡特琳娜(我使用Tomcat 5.5,你可能有一些根据的版本略有不同)
<Service name="Dev2">
<Connector port="8090" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
<Connector port="8092"
enableLookups="false" redirectPort="9443" protocol="AJP/1.3" />
<Engine name="Dev2" defaultHost="MyDev">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
<Host name="MyDev" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
</Host>
</Engine>
</Service>
注意,名称从卡塔利娜改为DEV2,和本地主机到MyDev。将这些更改为适合您应用程序的任何内容。端口和连接器也发生了变化。 一旦新服务安装完毕,您就需要将应用程序部署到适当的服务/端口。通过使用在XML文件中做到这一点(见Virtual Hosting)
Tomcat_Home/conf/Catalina/localhost/
和
Tomcat_Home/conf/Dev2/MyDev/
为各个端口,您设置
此时你需要做的就是添加还有几个文件将服务指向您的应用程序。 为例,Tomcat_Home/conf/Dev2/MyDev/
下,我有一个名为Another.xml文件,该文件包含以下
<Context path="/" docBase="C:/to_delete" debug="10" crossContext="false">
</Context>
现在,我可以使用Web地址http://127.0.0.1:8090/Another
访问新的应用程序。如果我试图用我的默认端口访问此8080,我得到一个错误,因为应用程序没有被部署到给定的端口。
有关此设置的一些注意事项。如果您使用VirtualVM查看应用程序,您会注意到它们共享相同的进程ID。因此你必须特别小心你的资源。他们将使用相同的堆空间,并且所有线程将显示在同一个列表中。如果您登录了应用程序(例如Log4j),请确保您可以选择显示哪个线程正在进行此项工作,因为可能很难说出其他哪个端口/应用程序。
正如Bozho已经指出的那样,简单地运行Tomcat的两个实例而不是一个服务器监听多个端口可能会更容易。
对不起,这是答案。在这个问题上,我看不到任何评论能力。 Mabye这个问题太老了,或者我的声誉不够高。
但是,我自己一直在研究同样的问题。您将不得不更多地了解Tomcat,http服务器和Java系统环境如何使用相同的实例。我已经读过它也非常慢。
最好的选择是单独的实例。有两个非常简单的方法来做到这一点: A/Ubuntu的,你可以使用SVN得到这个脚本: http://ubuntuforums.org/showthread.php?t=1211517 http://code.google.com/p/tomcat-linux/
B /你自己的,每个用户的情况。 http://brian.pontarelli.com/2007/09/17/multiple-tomcat-instances-on-ubuntu/
上一次是为Tomcat 5.5编写的,但可能是适应到Tomcat 6
然而,对于最新的Tomcat在Linux上多个JVM实例最好的方向是在这里: http://www.puschitz.com/InstallingTomcat.html
您可以在apache中使用mod-proxy将自定义端口重定向到标准端口。
- 1. Jboss-如何在不同的端口上运行多个web应用程序
- 2. 如何从运行应用程序在Tomcat上部署Web应用程序
- 3. 将Web应用程序部署到正在运行的Tomcat
- 4. 在同一端口下部署多个应用程序
- 5. 在tomcat上运行web应用程序
- 6. 如何在具有不同应用程序上下文的相同端口下的同一个tomcat下部署两个Web应用程序?
- 7. 如何在使用不同端口的相同服务器上运行多个跨平台Web应用程序?
- 8. 在不同的端口上在tomcat上运行不同的webapps
- 9. 如何在不同端口后面的单个Tomcat实例上运行不同的应用程序?
- 10. 如何在不显示8080端口的情况下在tomcat上部署java web应用程序?
- 11. Web应用程序不在端口80上运行,但在4200上运行
- 12. 在nodejs express框架的不同端口上运行多个应用程序
- 13. 使用TFS中的Web部署在不同网站上部署多个Web应用程序
- 14. 在OpenShift Tomcat上部署后无法运行Spring MVC Web应用程序?
- 15. 如何在同一服务器的不同端口上运行不同的Web应用程序?
- 16. 在同一端口上运行多个Tomcat实例
- 17. 在多个端口上运行Rails应用程序
- 18. 如何在部署期间选择Web应用程序应使用的端口
- 19. 创建线程在Tomcat中部署的Web应用程序
- 20. 如何在nginx中部署多个rails应用程序,并在根中部署一个应用程序?
- 21. 在两个不同的端口上运行Tomcat服务器
- 22. 多个WT应用程序可以在同一个端口上运行吗?
- 23. Web应用程序的一部分不能在Tomcat上运行,而在Eclipse上运行按计划运行Indigo
- 24. 在Linux中配置tomcat并运行已部署的应用程序
- 25. 在Tomcat 7上运行的Web应用程序中的NoClassDefFoundError
- 26. 在tomcat中部署FLEX3应用程序
- 27. 部署多个web应用程序在同一台服务器
- 28. 如何在eclipse中使用tomcat运行maven web应用程序
- 29. 在AWS上部署Web应用程序
- 30. 在JBoss上部署Web应用程序
为什么你需要不同的端口? – JoseK 2010-12-07 05:03:52
http://stackoverflow.com/questions/8823290/how-to-run-different-apps-on-single-tomcat-instance-behind-different-ports – sab 2013-08-15 14:04:30