Apache是一个web服务器环境程序,不过只支持静态网页,如(asp,php,cgi,jsp)等动态网页的就不行。
那么是什么是静态网页呢?静态网页是相对于动态网页而言,是指没有后台数据库、不含程序和不可交互的网页。你编的是什么它显示的就是什么、不会有任何改变。静态网页相对更新起来比较麻烦,适用于一般更新较少的展示型网站。
知道了静态网页,动态网页就很好理解了。动态网页以数据库技术为基础,这样大大降低了网站维护的工作量。连接数据库上就可以实现更多的功能,如注册、登录、各种管理等等。
那么有了Apache怎么支持动态网页呢?这就需要Apache连通上Tomcat。(单项连通,即通过Apache可以访问Tomcat资源,反之不然)Tomcat能对JSP、Servlet进行解析。
那什么又是Tomcat呢? Tomcat是一个Servlet容器,实现了对Servlet和JavaServer Page(JSP)的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。如果要在Apache环境下运行jsp 的话就需要一个解释器来执行jsp网页,而这个jsp解释器就是Tomcat。Tomcat是Java程序,所以只要有JDK就可以使用,不需要考虑操作系统平台。
由于Tomcat本身也内含了一个HTTP服务器,它也可以被视作一个单独的Web服务器。但是,不能将 Tomcat 和 Apache Web 服务器混淆,Apache Web Server 是一个用 C 语言实现的 HTTP web server;这两个 HTTP web server 不是捆绑在一起的。
那很多人分不清Apache和Tomcat的关系了,这里明确一下。Apache是web服务器,Tomcat是应用(java)服务器,它只是一个servlet容器,是Apache的扩展。 Apache和Tomcat都可以做为独立的web服务器来运行,但是Apache不能解释java程序(jsp,serverlet)。有点晕是不是?我看到过一个很好的比喻:Apache是一辆卡车,上面可以装一些东西如html等。但是不能装水,要装水必须要有容器(桶),Tomcat就是一个桶(装像Java这样的水),而这个桶也可以不放在卡车上。(向提出这个比喻的大牛致敬)
现在对Apache和Tomcat大体有个了解了,下一章节我们讲一下Apache究竟是如何提供服务的。