【Linux基础服务教程】http服务的基本认识

一、http协议

  • 应用层协议
  • 作用:
    • 在客户端、web服务器传递数据
  • Hyper Text Transfer Protocol 超文本传输协议
    • 客户端访问web服务器时,传递代码,由浏览器解析代码进行展示

二、web服务

1.类型

  • 静态网站
    • 网页上所有资源都是固定的
    • html语言, js、jquery
    • *.html
  • 动态网站
    • 一段程序代码,根据传递的参数不同展示不同的结果
    • PHP语言 *.php文件
    • Java语言 *.jsp文件

2.cookie、session

  • 作用:
    • 识别客户端登录身份

http1

http2

三、历代http版本特性

1.http/0.9

  • 只支持传输纯文本数据

2.http/1.0

  • 引用MIME机制
    • 传输非文本数据(图片、视频、音频、动画)
  • 缓存机制,加速网站的访问
    • 服务器缓存
    • 客户端缓存

3.http/1.1

  • 长连接机制 keepalive
    • 允许在一条连接上发送多次请求
      • 限制长连接的超时时间
      • 限制每个长连接的最大请求数 5000
  • 管道机制
    • 允许一次性发送多个请求,并行
  • 加强了缓存的管理
    • 缓存静态数据
    • 缓存过期时间

4.http/2.0

  • 以并行的方式发送请求、响应

5.http/3.0

  • 基于UDP协议
  • 在QUIC层实现了无序、并发字节流的传输
  • 重新定义了TLS协议加密QUIC头部的方式
  • 将Packet、QUIC Frame、HTTP3 Frame分离,实现了连接迁移功能

四、HTTP状态码

  • 200 成功响应
  • 301 永久重定向
  • 302 临时重定向
  • 304 本地缓存,和服务连接未更改本地缓存,也是成功响应
  • 4xx 错误响应
  • 403 权限拒绝
  • 404 文件找不到
  • 5xx 错误响应
    • 服务端配置有问题

五、客户端请求方法

  • GET
    • 用于获取内容、数据
  • POST
    • 上传数据

六、默认端口

  • http 80/TCP
  • https 443/TCP
  • www代理Tomcat 8080/TCP