Apache HTTP Server和Apache Tomcat有什么关系?(如果有的话)


34

我目前在生产Ubuntu VPS服务器上运行Apache httpd。我写的PHP脚本。

我对学习Java感兴趣,并且想知道如何编写一些服务器端Java以在当前设置下工作。

如何的Apache TomcatApache HTTP服务器的相互关系?

Tomcat可以作为httpd的模块吗?

还是仅仅是由同一组织(Apache Software Foundation)指导的两个截然不同的项目?


5
Or are they simply just two very different projects that happen to be steered by the same organisation?-他们是
Mchl 2011年

@Mchl,它们也非常相似。
Pacerier

Answers:


56

通常,Apache HTTP服务器只是设计用于服务静态网页的普通老式Web服务器。可以安装许多模块来增强Apache的功能,以便可以使用各种技术(例如PHP,CGI或其他任何技术)为动态网页提供服务,但是Apache的核心只是一个普通的HTTP服务器。

另一方面,Tomcat是从头开始专门设计的,可以用作Java Servlet引擎。它的主要目的是实现Java Servlet API并执行Java Servlet,以构建动态网站。Tomcat 可以用作提供静态页面的常规HTTP服务器,但这并不是其主要目的。(据称,Tomcat在提供静态页面方面比Apache httpd慢。)

可以通过称为mod_jk的连接器模块一起使用这两种技术。这将允许您使用Apache HTTP服务器提供常规的静态网页,并使用Tomcat Servlet引擎执行Servlet。


我们可以说,当人们下载Tomcat时,他/她下载了一个Web服务器,例如Apache Httpd(但不完全是这样)和一个Servlet容器,它只是一个Java应用程序?
Koray Tugay 2014年

@Charles,为什么Tomcat比Apache慢?
Pacerier

@Pacerier-他说“应该”,因为尽管人们广泛相信这一点,但实际上并非如此
儒勒(Jules),

@KorayTugay不完全是,不是。Tomcat 只是一个servlet容器。它恰好提供了一个实现静态Web服务器的默认servlet。没有Servlet容器,您将无法分离出Web服务器组件。
儒勒(Jules)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.