Apache与Tomcat整合使用详解:静态与动态网页处理流程及区别
3、两者都是开源免费的

联系
Apache 是一种普通服务器,它自身仅能支持 html 也就是普通网页。它可以借助插件来支持 php 。同时,Apache 还能够与 Tomcat 进行连通,这种连通是单向的,即通过 Apache 可以访问 Tomcat 资源,而反过来则不行。
Apache 仅能支持静态网页。然而,对于像 asp、jsp、php、cgi 这类的动态网页,则需要 Tomcat 来进行处理。
3)Apache和Tomcat整合使用:
客户端请求的若是静态页面,那么只需 Apache 服务器响应请求。
如果客户端发出了对动态页面的请求,那么就由 Tomcat 服务器来响应这个请求。Tomcat 服务器会对解析后的 JSP 等网页代码进行解析,然后将解析后的结果回传给 Apache 服务器,最后由 Apache 服务器将其返回给浏览器端。
这是因为 jsp 是在服务器端进行代码解释的。Tomcat 主要负责动态代码的解析。Apache 会回传已经解析好的静态代码。将 Apache 与 Tomcat 这样进行整合,就能够降低 Tomcat 的服务开销。
Apache 是独立的,Tomcat 也是独立的。在同一台服务器上,它们可以进行集成。
区别
Apache 是由 C 语言实现的,它具备支持各种特性和模块的能力,以此来扩展其核心功能;Tomcat 是用 Java 编写的,它在支持 Servlet 和 JSP 方面表现更为出色。
Apache 是一种 Web 服务器。Web 服务器的作用是传送页面,让浏览器能够进行浏览。Web 服务器主要负责专门处理 HTTP 请求。然而,应用程序服务器是通过多种协议来为应用程序提供商业逻辑的。
Tomcat 运行在 Apache 之上。应用服务器能提供客户端应用程序可调用的方法。它只是一个 servlet(jsp 也被翻译成 servlet)容器,可被认为是 Apache 的扩展,并且能够独立于 Apache 运行。
Apache 是一种普通的服务器,它自身仅仅能够支持 html 静态的普通网页。可以通过插件来支持 PHP 。它还能够与 Tomcat 连通,即单向的 Apache 连接 Tomcat,意味着通过 Apache 可以访问 Tomcat 资源,而反过来则不行。Tomcat 是 jsp/servlet 容器,同时也对 HTML、JSP、ASP、PHP、CGI 等提供支持,其中 CGI 需要一些手动调试,但这并不困难。
Apache 主要侧重于 http server 。Tomcat 主要侧重于 servlet 引擎。如果以 standalone 方式运行,在功能方面,Tomcat 与 apache 在支持 JSP 上是等效的。不过,Tomcat 对静态网页的处理不太理想。
Apache 能够持续运行一年而无需重启,这表明它的稳定性相当出色。然而,Tomcat 却不一定具备这样的稳定性。
首选的 web 服务器是 Apache。Apache 能够解析的 jsp 和 servlet 不会使用 tomcat。只有 Apache 解析不了的 jsp 和 servlet 才会使用 tomcat。
Apache 是最初的页面解析服务。Tomcat 是后来研发出来的。从本质上讲,tomcat 的功能能够替代 Apache。然而,Apache 毕竟是 tomcat 的前辈,并且在市场上仍有不少人在使用 Apache。所以,Apache 会继续存在,不会被取代。Apache 不能解析 java 相关的东西,但它解析 html 的速度很快。
两者例子:
Apache 是一辆车,它上面能够装载诸如 html 等一些东西,然而却不能装载水。若要装载水,就必须要有容器(桶),并且这个桶并非一定要放置在卡车上,当这个桶不是放置在卡车上时,它就是 TOMCAT。
两者整合:
Apache 是一个用于创建 web 服务器环境的程序。启用它后,它可以充当 web 服务器。然而,它仅支持静态网页,并不支持动态网页,例如 asp、jsp、php 和 cgi。
如果要在 Apache 环境下运行 jsp,那么就需要一个解释器来执行 jsp 网页。而这个能够执行 jsp 网页的解释器就是 Tomcat。
为什么需要 JDK 呢?因为如果 jsp 要连接数据库,就需要 jdk 来提供连接数据库的驱动。所以,要运行 jsp 的 web 服务器平台,就需要 APACHE + TOMCAT + JDK。
整合的好处:
如果客户端所请求的是静态页面,那么就只需要 Apache 服务器去响应请求。
如果客户端请求动态页面,则是Tomcat服务器响应请求
jsp 是在服务器端进行代码解释的。通过这样的方式进行整合,能够减少 Tomcat 的服务开销。