ref: https://jingyan.baidu.com/article/47a29f246f354ec0142399dc.html

网上有很多的介绍apache和tomcat的区别,但大部分都是介绍他们性能啊之类的区别,看了还是不懂,这里小编将从使用流程上介绍,虽然都是简单的东西,但肯定能看懂就是了。

方法/步骤

 
  1. 1

    首先,用户通过浏览器访问一个网址,我们叫他URL,格式可能是:

    http://www.*********com/alspweb/form.html

    也可能是

    http://www.************.com/alspweb/form.jsp

    这样子.

  2. 2

    这个请求会发送到WEB服务器上,而web服务器上搭建了web服务器软件,就是apache了。所以,apache是一个web服务器软件。

  3. 3

    apache发现请求的是一个静态的web页面,这个简单啊,apache自己就可以处理。所以,apache获取这个页面。这个页面在服务器上存储的样子类似于下图所示

  4. 4

    然后,apache将这个页面放在HTTP响应的消息体中(可以理解是,apache将发送一个HTTP响应给浏览器,而这个页面就粘贴在这个响应中一起带过去了。你好像你邮寄了一封信,里面顺便插入了一张HTML页面一样)

  5. 5

    浏览器收到了HTML页面,OK,此时他还是一段代码,然后解析成具体的页面

  6. 6

    那么问题来了,apache怎么知道你请求的是个静态网页呢?看名字喽,你请求的是form.html,后缀名是.html,肯定是个静态的啦,apache自己就处理了。

  7.  

    但是apache处理不了动态的网页。比如,我访问

    。。。。。。。。。。。。/form.jsp

    后缀名是.jsp,肯定是个动态的东西,apache说,这个我处理不了,需要找其他的软件帮我处理。

  8.  

    找谁呢?就是tomcat,所以tomcat是一个容器,也可以叫应用服务器。tomcat本身也可以处理静态网页,所以tomcat是可以脱离apache自己单独存在的,但是tomcat对静态网页处理的不好,所以往往和apache共同使用。

  9.  

    此时,apache直接将请求发送给tomcat,也就是请求

    http:/············································/alspweb/form.jsp的页面。

  10.  

    tomcat说,这个我能干啊,于是找到了form.jsp的页面

  11.  

    其中,这一段代码就是jsp写的动态的东西了。小编这里写的简单,一般来说,会有一个请求发送到jsp页面,jsp进行处理后再把结果写入到网页。正因为输入的不同会得到不同的结果,也会生成不同的页面,所以是个动态的页面。动态的页面就是说你在请求前这个页面还不存在,请求后通过请求的参数才能得到最后的页面。

  12.  

    tomcat对jsp进行解析,然后把jsp的文件解析成一个静态的html页面,再把这个页面交给了apahce

  13.  

    apache说,嘿这个是html,我可以处理啊,然后把这个html直接给到了浏览器了。

  14.  

    我们通过浏览器看下源码(右键->查看网页的源代码),可以看到,之前的<%  %>符号已经不见了

  15.  

    所以,我们把apache叫为web服务器软件,他只能处理静态的页面,动态的处理不了。而tomcat可以处理动态的,静态的也能处理,但处理的没有apache厉害。

  16.  

    你们可以自己试试,只搭建一个apche,然后在里面放一个.jsp页面,直接访问看看什么结果。

JavaWeb - apache和tomcat是如何配合工作的的更多相关文章

  1. JavaWeb - Apache与Tomcat有什么关系和区别

    总结: 1- apache是web服务器,侧重于http server: tomcat是应用(java)服务器,侧重于servlet引擎 2-合作过程详解,请看:JavaWeb - apache和to ...

  2. windows平台整合Apache与tomcat

    Apache与Tomcat整合的好处 Apache主要用来解析静态文本,如html.Tomcat虽然也有此功能,但Apache效率大大高于Tomcat,尤其是对于并发数较大的企业级应用,能更好的显示A ...

  3. Apache、Tomcat、JBoss、Weblogic四个常用的JavaEE服务器

    Apache全球应用最广泛的http服务器,免费,出自apache基金组织 Tomcat应用也算非常广泛的web 服务器,支持部分j2ee,免费,出自 apache基金组织 JBoss开源的应用服务器 ...

  4. JavaWeb学习总结(一)JavaWeb入门与Tomcat

    一.常见软件系统体系结构B/S.C/S 1. C/S C/S结构即客户端/服务器(Client/Server),例如QQ: 需要编写服务器端程序,以及客户端程序,例如我们安装的就是QQ的客户端程序: ...

  5. Apache与Tomcat的整合

    一 Apache与Tomcat比较联系 apache支持静态页,tomcat支持动态的,比如servlet等. 一般使用apache+tomcat的话,apache只是作为一个转发,对jsp的处理是由 ...

  6. 结合Apache和Tomcat实现集群和负载均衡 JK 方式 2 (转)

    本文Apache+Tomcat集群配置       基于最新的Apache和Tomcat,具体是2011年4月20日最新的Tomcat和Apache集群和负载均衡配置. 准备环境 Apache Apa ...

  7. Web服务器之iis,apache,tomcat三者之间的比较

    IIS-Apache-Tomcat的区别 IIS与Tomcat的区别 IIS是微软公司的Web服务器.主要支持ASP语言环境. Tomcat是Java Servlet 2.2和JavaServer P ...

  8. Apache与Tomcat联系及区别(转)

    Apache与Tomcat都是Apache开源组织开发的用于处理HTTP服务的项目,两者都是免费的,都可以做为独立的Web服务器运行.Apache是Web服务器而Tomcat是Java应用服务器. A ...

  9. Apache和tomcat服务器使用ajp_proxy模块

    首先我们先介绍一下为什么要让Apache与Tomcat之间进行连接.事实上Tomcat本身已经提供了HTTP服务,该服务默认的端口是8080,装好tomcat后通过8080端口可以直接使用Tomcat ...

随机推荐

  1. Axios

    axios 是一个基于Promise 用于浏览器和 nodejs 的 HTTP 客户端.简单的理解就是ajax的封装 它本身具有以下特征: a.从浏览器中创建 XMLHttpRequest     b ...

  2. TensorRT&Sample&Python[network_api_pytorch_mnist]

    本文是基于TensorRT 5.0.2基础上,关于其内部的network_api_pytorch_mnist例子的分析和介绍. 本例子直接基于pytorch进行训练,然后直接导出权重值为字典,此时并未 ...

  3. 静态代理与JDK动态代理

    demo地址: https://github.com/ZbLeaning/leaning 代理: 为其他对象提供一种代理以控制对这个对象的访问.分为静态代理和动态代理.代理模式的目的就是为真实业务对象 ...

  4. Golang常见误区(二)

    35. 关闭 HTTP 的响应体 使用 HTTP 标准库发起请求.获取响应时,即使你不从响应中读取任何数据或响应为空,都需要手动关闭响应体.新手很容易忘记手动关闭,或者写在了错误的位置: // 请求失 ...

  5. MySQL中的float和decimal类型有什么区别

    decimal 类型可以精确地表示非常大或非常精确的小数.大至 1028(正或负)以及有效位数多达 28 位的数字可以作为 decimal类型存储而不失其精确性.该类型对于必须避免舍入错误的应用程序( ...

  6. Python进阶3---python类型注解、functools

    函数定义的弊端 函数注解Function Annotations 业务应用 inspect模块 #示例 import inspect def add(x,y:int,*args,**kwargs) - ...

  7. Shell命令-文件及内容处理之wc,tr

    文件及内容处理 - wc.tr 1. wc:统计文件的行数.单词数或字节数 wc命令的功能说明 wc 命令用于计算字数.利用 wc 指令我们可以计算文件的字节数,字数,或是列数,若不指定文件名称,或是 ...

  8. Python面试知识点小结

    一.Python基础 1.Python语言特性: 动态型(运行期确定类型,静态型是编译型确定类型),强类型(不发生隐式转换,弱类型,如PHP,JavaScript就会发生隐患式转换) 2.Python ...

  9. 川普和习G-20会面为缓和中美贸易战提供了很大的机会

    川普和习将于这周在Buenos Aires(阿根廷首都)会面,互相商讨虚弱经济全球化的最大威胁. 自从川普在今年七月第一次开始提高中国商品关税之后,对全球的投资者和逐渐削弱的经济活动来说,两位领导人可 ...

  10. Java8学习笔记(一)--Lambda表达式

    两个概念 函数式接口 函数式接口就是只显式声明一个抽象方法的接口.为保证方法数量不多不少,java8提供了一个专用注解@FunctionalInterface,这样,当接口中声明的抽象方法多于或少于一 ...