Apache HTTP Server和Apache Tomcat在功能上有什么不同?

我知道Tomcat是用Java编写的,HTTP服务器是用C编写的,但除此之外,我真的不知道它们是如何区分的。它们有不同的功能吗?


当前回答

Apache是一个HTTP web服务器,它作为HTTP服务。

Apache Tomcat是一个java servlet容器。它的功能与web服务器相同,但被定制为执行java servlet和JSP页面。

其他回答

除了上面这些不错的答案之外,我认为还应该说Tomcat内置了自己的HTTP服务器,并且在提供静态内容方面功能齐全。根据您的java虚拟机配置,它实际上可以优于apache中的传统连接器,如mod_proxy和mod_jk。

也就是说,一个完全优化的Tomcat服务器应该能够快速地提供静态文件,如果除了静态内容之外还有Java servlet、jsp和ColdFusion文件,那么Tomcat本身就可以出色地完成工作。

Apache是一个HTTP web服务器,它作为HTTP服务。

Apache Tomcat是一个java servlet容器。它的功能与web服务器相同,但被定制为执行java servlet和JSP页面。

如果你使用java技术(Servlet/JSP)来制作web应用程序,你可能会使用Apache Tomcat。 然而,如果你正在使用其他技术,如Perl, PHP或ruby,它更好(更容易)使用Apache HTTP服务器。

Tomcat主要是一个应用程序服务器,它为服务器上自定义构建的Java servlet或JSP文件提供请求。它通常与Apache HTTP服务器一起使用(至少在我的经验中是这样)。使用它手动处理传入的请求。

HTTP服务器本身最适合提供静态内容……HTML文件、图像等。

Apache是一个通用的http服务器,它支持许多Tomcat不支持的高级选项。 虽然Tomcat可以用作通用的http服务器,但您也可以设置Apache和Tomcat,使其与提供静态内容的Apache一起工作,并将动态内容的请求转发给Tomcat。