Deployment 在URL中没有war名称的Tomcat上部署war
我构建了一个名为Deployment 在URL中没有war名称的Tomcat上部署war,deployment,tomcat,Deployment,Tomcat,我构建了一个名为myapp.war的war文件,并将其部署在Tomcat上。我已将端口从8080更改为80,因此我可以在example.com/myapp访问它(其中example.com是我的主机) 如何配置应用程序,以便在我转到example.com时,它显示我的应用程序?我不想从example.com重定向到example.com/myapp——我不想在URL中包含myapp。 我是否必须设置Apache来服务这样的页面,或者我可以使用Tomcat配置中的虚拟主机来实现这一点?请查看。您不
myapp.war
的war文件,并将其部署在Tomcat上。我已将端口从8080更改为80,因此我可以在example.com/myapp
访问它(其中example.com
是我的主机)
如何配置应用程序,以便在我转到example.com
时,它显示我的应用程序?我不想从example.com
重定向到example.com/myapp
——我不想在URL中包含myapp
。我是否必须设置Apache来服务这样的页面,或者我可以使用Tomcat配置中的虚拟主机来实现这一点?请查看。您不必设置Apache前端或在Tomcat中为此配置虚拟主机。相反,只需将webapp部署到“根上下文”。为此,请参阅Tomcat Wiki上的。它们描述了三种可能的方法,以便您能够选择最适合您需要的方法。您只需将war命名为ROOT。war以下是两种可能的方法:
CATALINA\u BASE/conf/server.xml
查找主机元素并设置autoDeploy=“false”
deployOnStartup=“false”
然后在末尾添加
,如:
不,这还不够,您需要先删除当前的默认应用程序(即删除根目录)才能使用此方法。事实并非如此,如果重新启动,Tomcat将扩展WAR并覆盖根目录(适用于所有最新版本的Tomcat)。哦,真的,忘了我说的。但值得一提的是,它将被覆盖。这是真的。但是如果他以前不知道ROOT.war,那么他只是在那里得到了默认应用程序。
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="false" deployOnStartup="false">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
<Context path="" docBase="your_project_name"/><!--Add this-->
</Host>