Http
约 1313 字大约 4 分钟
http
- 1. http协议
- 2. Tomcat(轻量级应用服务器,支持Servlet和jsp规范)目录结构(了解)
- 3. WEB项目目录结构
- 4. 软件架构
- 5. WEB服务器
- 6. WEB资源:存在于web应用服务器可供外界访问的资源就是web资源
1. http协议
- 超文本传输协议,用于定义WEB服务器和WEB浏览器之间交换数据的过程
- 特点:HTTP协议默认端口80,响应和请求必须成对,先有请求后有响应
http协议组成 | 组成 | 描述 |
---|---|---|
Http请求协议 | 请求行 | POST/day09/01.http/from.html HTTP/1.1请求格式的第一行 |
①请求方式get:请求参数在url后面,例:x.html?a=a&b=b url长度限制get请求数据大小,没有请求体,不安全 | ||
Post:请求参数在请求体,长度无限制,安全,除了表单的method为post外,其他都是get请求 | ||
②统一资源定位符URl 协议://域名:端口号/资源位置?参数=值 | ||
③协议版本 | ||
请求头 | Host:localhost:8080 | |
User-Agent\refer:防盗链(判断它是不是以什么开头就行startswith) | ||
if-modified-since:浏览器最后一次缓存时间 | ||
cookie:浏览器缓存的一种 | ||
请求体 | a=a&b=b 一般只有post请求方式才有,都是用户表单提交的数据 | |
Http响应协议 | 响应行 | HTTP/1.1 200 OK 协议/版本 状态码 |
200:成功302:重定向304:访问本地缓存404:找不到资源500:服务器内部错误 | ||
响应头 | 服务器通过响应头来控制浏览器的行为,不同头浏览器的操作不同 | |
Location:指定响应的路径,需要与状态码302配合使用 | ||
Content-Type:响应正文的类型(MIME类型)text/html:charset=UTF-8 | ||
Content-Disposition:通过浏览器以下载的方式解析正文attachment;filename=xx.zip | ||
Set-Cookie:服务器向浏览器写入cookie | ||
响应体 | 服务器发给浏览器的正文、响应体是服务器回写给客户端的页面正文 | |
浏览器将正文加载到内存,然后解析渲染显示页面内容 |
![http请求.png](https://290ff162.telegraph-image-eg9.pages.dev/file/306a175def763027c2977.png)
![http响应.png](https://290ff162.telegraph-image-eg9.pages.dev/file/e60aaac0f67769eb9b331.png)
2. Tomcat(轻量级应用服务器,支持Servlet和jsp规范)目录结构(了解)
![tomcat目录.png](https://290ff162.telegraph-image-eg9.pages.dev/file/9a417a4b6d5586ad9e533.png)
- conf:配置文件目录 (config /configuration)
- 核心配置文件:server.xml
- 用户权限配置文件:tomcat-users.xml
- 所有web项目默认配置文件:web.xml
- bin:脚本目录
- 启动脚本:startup.bat
- 停止脚本:shutdown.bat
- lib:依赖库,tomcat和web项目中需要使用的jar包
- logs:日志文件.
- localhost_access_log..txt tomcat记录用户访问信息,星表示时间。
- 例如:localhost_access_log.2016-02-28.txt
- temp:临时文件目录,文件夹内内容可以任意删除
- webapps:默认情况下发布WEB项目所存放的目录
- work:tomcat处理JSP的工作目录
3. WEB项目目录结构
项目名称(webapps:)
|----静态资源html,css,js
|---WEB-INF(不能直接通过浏览器进行访问)
|--web.xml 当前web项目的核心配置,servlet2.5有,3.0省略
|--lib:依赖库,tomcat和web项目中需要使用的jar包
|--class:java源码编译后生成的class文件存放的位置
4. 软件架构
软件架构 | 描述 |
---|---|
B/S结构(淘宝) | 浏览器/服务器,通过浏览器和服务器交互,不需要安装其他程序 |
优点:维护和升级简单,无缝升级、不必安装程序,操作系统内置浏览器 | |
缺点:用户体验受浏览器限制、信息不安全(要用U盾)服务器负荷重(大部分计算在服务器端) | |
C/S结构(迅雷) | 客户端/浏览器端,要求客户端安装客户端程序 |
优点:用户体验不守限制、信息安全、服务器负荷低,部分计算功能在客户端 | |
缺点:占用磁盘空间、维护和升级麻烦、安装依赖其他条件 |
5. WEB服务器
WEB服务器 | 说明 |
---|---|
Tomcat | Apache组织提供的一个免费的小型服务器软件,支持servlet和JSP规范 |
WebLogic | bea公司的一个收费的大型的服务器软件,后被oracle收购,支持ee所有规范 |
WebSphere | IBM公司的一个收费的大型服务器软件,支持ee所有规范 |
JBoss | 基于j2ee的开放源代码的应用服务器,管理EJB的容器的和服务器 |
6. WEB资源:存在于web应用服务器可供外界访问的资源就是web资源
WEB资源 | 说明 | 举例 |
---|---|---|
动态资源 | web页面中供人们浏览的数据是由程序产生,不同时间点访问web页面看到的内容各不相同 | JSP/Servlet、ASP、PHP |
静态资源 | web页面中供人们浏览的数据始终是不变 | HTML、CSS、JS、图片、多媒体 |