linux - 在 Amazon AWS 中部署 WAR 文件 - Tomcat 和 Apache HTTP Server 冲突

标签 linux apache amazon-ec2 tomcat6

我正在使用 Amazon Linux AMI 实例,并在其上部署了一个 war 文件。

The Console

部署的war文件显示在tomcat6的'webapps'文件夹中。

真正的问题是 - 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 上上传 WAR 以将其部署到 tomcat 中。)

TIA:)

最佳答案

除了 Mac 的建议(关闭 Apache 并让 Tomcat 监听端口 80,或在 Apache 上配置 Tomcat 连接器)之外,您还可以在 Apache 配置上设置一对 ProxyPass/ProxyPassReverse 指令,如 mod_proxy documentation 中的示例.

如果您决定遵循此建议,您的规则将如下所示(在监听端口 80 的 VirtualHost 中):

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

关于linux - 在 Amazon AWS 中部署 WAR 文件 - Tomcat 和 Apache HTTP Server 冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11481604/

相关文章:

c - 使用字符串 C 程序/Popen 时出现段错误

java - 如何让tomcat7一直在线?

apache - Mercurial: "remote: ssl required"即使推送到 HTTPS 存储库

python - 如何检查是否与 AWS 实例建立了 SSH 连接

unix - 将 Amazon EC2 实例从 t1.micro 升级到 medium,实例存储保持不变

linux - POSIX 消息队列的替代方案

linux - 为 ubuntu 14.04 grunt 命令配置 yeoman 不起作用

php - 如何将可扩展的长轮询服务器与 PHP 集成?

apache - mod_pagespeed 信标有什么作用?

amazon-ec2 - EC2 cloudformation模板使用条件添加ebs卷