URL简述
相对URL 从当前页面
绝对URL 从当前页面或其他页面跳转而来
HTTPD版本<0.9文本><1.0,method,mime,弱缓存><1.1持久连接><2.0,mime,spdy,缓存,method>
HTTPD特性:无状态、文本编码协议<telnet, curl, enlinks>
追踪用户来源的机制:cookie(重cookie,轻cookie),session
Cookie分类
Cookie工作机制: 随机数惟一标识用户
轻cookie应用: 数据结构保存cookie与session的映射
HTTP事务: 一次请求和响应
事务元数据: headers
实体: entity-body
HTTP请求响应报文详解:
<method> <url> <version>
<header>
...
<header>
空1
空2
<entity-body>
<version> <status> <reason-phrase>
<header>
...
<header>
空1
空2
<entity-body>
100信息
200 OK 成功
301 Moved Permantly 永久 302 Found 临时 304 Not Modified 条件
401 WWW-Authenticate 质询认证 403 Forbidden 没有权限访问 404 Not Found 没有资源
500 Internal Server Error 服务内部错误 502 Bad Gateway 错误网关
URL Uniform Resource Locator 标识每个资源的位置 URL是URI的子集
相对URL:相对当前页面的URL,(相对路径:由当前工作目录起始的路径)
绝对URL:用于跨站引用或当前页面,(绝对路径:由/起始的路径)
HTTPD版本
HTTPD特性
追踪用户来源的机制
Cookie工作方式
二次通信:
服务器 接收随机数(令牌) <-- 客户端 将访问的服务器首次所发的令牌发给服务器,用于标明自己的身份
Cookie分类
Session:<轻cookie:减小隐私信息丢失的可能性>,在服务器端在进程内存中维护Session
HTTP事务 一次httpd请求和响应
事务元数据:(起始行+headers)
实体:entity-body部分
HTTP请求响应报文详解
请求报文
响应报文
method 客户端告诉服务器做什么
status code 服务器告诉客户端结果
reason-phrase 原因短语
反向代理:将自己扮演为服务端接收请求,支持缓存,拆封报文并重新封装
正向代理:将自己扮演为客户端发起请求
重定向
条件式请求
用户质询认证
Forbidden 请求被禁止,IP控制或用户访问控制不通过时
404 用户请求一个不存在的资源
错误网关:
headers 请求和响应首部: 标记请求或响应的属性 , 事务交换的元数据信息
负载均衡调度时,可以根据首部调度
1、首部可以有多个
2、首部的格式:Directive: value
首部分类
通用首部
请求首部
自己可接受的特性
条件式请求首部: 缓存相关
安全请求首部
代理请求首部
响应首部
实体首部
示例
General Request URL:http://172.16.100.1/ Request Method:GET Status Code:200 OK Remote Address:172.16.100.1:80 //服务器地址 Response Headers view source Accept-Ranges:bytes Connection:close // 服务器是非持久连接 KeepAlive off Content-Encoding:gzip // 实体格式:字符集,包含多种语言编码格式 Content-Length:7725 // 大小 Content-Type:text/html; charset=UTF-8 // 类型 Date:Sat, 09 Sep 2017 12:30:15 GMT // 请求报文的创建时间 ETag:"10c-6353-558c0da6c3922" // 实体的额外标签,基于标签的条件式请求 Last-Modified:Sat, 09 Sep 2017 12:30:05 GMT // 实体最近一次修改的时间 Server:Apache/2.2.15 (CentOS) // 服务器程序名、版本号 Vary:Accept-Encoding // 服务器查看变化的首部 Request Headers view source Accept:text/html,application/xhtml+xml,applicat // 客户端可接受的MIME类型 Accept-Encoding:gzip, deflate, sdch // 客户端可接受的压缩格式 Accept-Charset: // 字符集 Accept-Language:zh-CN,zh;q=0.8 // 客户端可接受的语言编码格式 Cache-Control:max-age=0 // 缓存控制 Connection:keep-alive // Host:172.16.100.1 // 服务器主机 User-Agent:Mozilla/5.0 // 用户代理