Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中。
tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。
实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。
apache支持静态页面,tomcat支持动态页面,比如servlet、jsp等,一般使用apache+tomcat的话,apache只是作为一个转发,对jsp的处理是由tomcat来处理的。
apache可以支持php、cgi、perl,但是需要相关的配置;如果需要使用java的话,你需要tomcat在apache后台支撑,将java请求由apache转发给tomcat处理。
apache是web服务器,而Tomcat是应用(java)服务器,Tomcat只是一个servlet(jsp也翻译成servlet)容器,也可以认为是apache的扩展,但是可以独立于apache运行。
1、两者都是apache组织开发的;
2、两者都有HTTP服务的功能;
3、两者都是免费开源的;
1、Apache是专门用了提供HTTP服务的,以及相关配置的(例如虚拟主机、URL转发等等);
2、Tomcat是Apache组织在符合J2EE的JSP、Servlet标准下开发的一个JSP应用服务器;
Apache是一个web服务器环境程序,启用他可以作为web服务器使用,不过Apache只支持静态网页,如(asp、php、cgi、jsp)等动态网页的就不行
如果要在Apache环境下运行jsp的话就需要一个解释器来执行jsp网页,而这个jsp解释器就是Tomcat,有人可能会疑问为什么还要JDK呢?因为jsp需要连接数据库的话,
就要JDK来提供连接数据库的驱程,如果要运行jsp的web服务,就需要 Apache + Tomcat + JDK 环境。
如果客户端请求的是静态页面,则只需要Apache服务器响应请求;如果客户端请求动态页面,则是交由Tomcat服务器响应请求。
因为jsp是服务器端解释代码的,这样整合就可以减少Tomcat的服务开销。
Apache 侧重于http server,
而Tomcat 侧重于Servlet引擎,Apache如果以单独运行的方式,其功能上与Apache等效 ,支持JSP,但对静态网页不太理想;
Apache是web服务器,tomcat是应用(java)服务器,Tomcat只是一个Servlet(jsp编译成Servlet)容器,可以认为是Apache的扩展,但是可以独立于Apache运行。
换句话说,Apache是一辆卡车,上面可以装一些沙、石子(如Html、SHtml)等。但是不能装水(asp、php、cgi、jsp),如果要装水必须要有个装水的容器(桶),而这个Tomcat就是放在卡车上装水的桶。