第一次尝试用markdown写博客,嘿嘿
编辑的时候注意选择HTML源码模式,并选中“This post is formatted with Markdown”

HTTP协议

1.特点

  1. 支持客户/服务器模式
  2. 简单快速
  3. 灵活,可传输任意数据类型,用content-type标记
  4. 无连接
  5. 无状态

2.请求

请求由三部分组成

  1. 请求行
  2. 消息报头
  3. 请求正文

请求行

格式 Method URL HTTP-version \r\n

eg GET /a.html HTTP/1.1 \r\n

3.响应

响应由三部分组成

  1. 状态行
  2. 消息报头
  3. 响应正文

状态行

格式version status-code phrase \r\n

eg HTTP/1.1 200 OK

状态码

1XX提示信息,请求已接受,继续处理

2XX成功

200 OK

3XX重定向

4XX客户端错误

400 bad request 请求有误
401 unauthorized
403 forbidden 拒绝服务
404 not found

5XX服务器端错误

500 internal server error 服务器发生不可预知错误
503 server unavailable 服务器当前不能处理请求,等一会

消息报头

包含:普通报头、请求报头、响应报头、实体报头

普通报头

  1. cache-control
  2. date
  3. connection

请求报头

accept //类型信息
accept=charset //gb2312
accept-encoding //gzip.deflate
accept-language //zh-cn
authorization
host //被请求资源的主机和端口号
user-agent //可选,浏览器信息

响应报头

location //重定向
server //服务器版本
www-authenticate

实体报头

content-encoding
content-language
content-length //正文长度
content-type //eg:text/html
last-modified
expires //过期时间,用于缓存
GMT