Tomcat是否需要Apache httpd?

时间:2012-02-23 18:45:47

标签: java tomcat webserver war apache

如果给我一个包含Java Web应用程序的war文件,并且我想在本地运行该war,那么我只需要Tomcat,还是需要Tomcat Apache httpd(或者任何其他网络服务器)?提前谢谢!

4 个答案:

答案 0 :(得分:43)

Tomcat是它自己的Web服务器,因此不需要像Apache这样的单独的Web服务器。您可能希望更改Tomcat的端口,因为它默认为8080,网站通常在端口80上。

我认为人们通常会将Apache放在Tomcat之前,以便他们可以执行以下操作:

  • 让一个网站背后有几个Tomcat实例。
  • 从Apache提供静态文件以加载Tomcat。
  • 使用您可能需要的其他Apache功能(模块)。
  • 正如@TacticalCoder在评论中提到的那样,你需要成为root用户才能收听端口80,所以有些人可能会使用Apache作为将端口80代理到端口8080的简单方法。

我建议使用YAGNI方法,直到/除非你找到一个理由让你想要Apache。

答案 1 :(得分:5)

只是Tomcat。 HTTPD永远不是Tomcat的必需品。

答案 2 :(得分:0)

您只需要Tomcat或任何其他Java servlet容器(Jetty,resin等)。

答案 3 :(得分:0)

Tomcat是一个servlet容器,它拥有自己的http服务器,所以如果你想运行一个war,你只需要一个tomcat,但如果你想运行一个只包含静态文件的网站(html, js,css),你应该选择更好的apache,即使tomcat可以做到这一点