2012-07-14 75 views
0

我正在使用Amazon Linux AMI实例,并且在其上部署了一个war文件。在Amazon AWS中部署WAR文件 - Tomcat和Apache HTTP Server冲突

The Console

部署的WAR文件中的tomcat6的 'web应用' 文件夹中显示出来。

真正的问题是 - 也安装了Apache HTTP 2.2服务器。

当我进入我的实例的URL(http://ec2-107-20-92-32.compute-1.amazonaws.com),我看到的Apache HTTP 2.2只,其中,如果我没有错,适用于端口号80

现在的默认页,我怎么弄我的Apache HTTP 2.2服务器与tomcat6通信以显示部署在Tomcat中的网站?

或者,还有其他替代方案吗?

(我用的MacOS X的终端连接到我的实例,我上传到S3战争在Tomcat中部署它。)

TIA :)

+1

是否重要的​​是你通过Apache访问你的webapp?否则,关闭apache服务并重新配置tomcat工作在端口80而不是8080 – mac 2012-07-14 06:35:43

+0

否则,请查看[this](http://tomcat.apache.org/connectors-doc/webserver_howto/apache.html)了解详细信息 – mac 2012-07-14 09:11:52

回答

0

除了MAC的建议(关闭Apache和使Tomcat侦听端口80或在Apache上配置Tomcat连接器),您也可以在Apache配置中设置一对ProxyPass/ProxyPassReverse指令,如mod_proxy documentation上的示例。

如果你决定采用这种建议,你的规则看起来像如下(在VirtualHost在端口80听):

ProxyPass/http://ec2-107-20-92-32.compute-1.amazonaws.com:8080/ 
ProxyPassReverse/http://ec2-107-20-92-32.compute-1.amazonaws.com:8080/ 
0

毫无效果。 我删除了实例,并尝试与Ubuntu 12.04 64位实例一样,它的工作。 我不知道为什么它没有工作在亚马逊Linux AMI :(