端口80上的Tomcat Webapp

时间:2013-05-01 21:18:45

标签: java tomcat tomcat6

我的tomcat服务器上有一个webapp,如下所示:

mydomain.com:8080/mywebapp

然后我连接到我的webapp,它工作正常,但我想要的是看到我的webapp这样:

mydomain.com

所以我不想只在端口80上使用tomcat,我不想通过其名称访问我的webapp,我想直接使用我的域URI连接。

我该怎么做?我希望这适用于Linux(Ubuntu 12.04 LTS)和Windows服务器。

3 个答案:

答案 0 :(得分:11)

有几种方法可以实现这一点,但最常见的解决方法是在其前面运行Apache作为反向代理。您可以找到一些详细信息here。这适用于Linux和Windows。对于Linux,您还可以使用authbind来允许Tomcat绑定到端口80。 只需将端口更改为80中的server.xml将无法在Linux中运行,因为它需要您以root启动Tomcat,这不是一个好主意。

此外,要将您的网络应用设为/,您可以将您的war文件部署为ROOT.war

答案 1 :(得分:6)

在特权端口(低于1024的端口)上运行任何应用程序都需要特殊权限。如果您这样做,则应确保您的实例为properly hardened

要配置端口tomcat侦听,您必须修改conf / server.xml(server reference documentation)中的HTTP连接器:

<Connector port="80" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443" />

要更改应用的上下文路径,您可以重命名war文件。要在根目录下部署它,请将war文件重命名为ROOT.war。或者您可以添加META-INF / context.xml,您可以在其中指定所需的上下文路径(context reference docs):

<?xml version="1.0" encoding="UTF-8"?>
<Context path="/" />

答案 2 :(得分:1)

您需要设置apache webserver并将其配置为使用tomcat。

您需要使用mod_jk来配置apache webserver以与tomcat通信。

使用此link设置mod_jk