Web相关知识(草稿)

目录

[1、Web 概念](#1、Web 概念)

[1.1 Web 的基本概念](#1.1 Web 的基本概念)

特点

[1.2 B/S 架构模型](#1.2 B/S 架构模型)

[1.3 Web 请求与响应过程](#1.3 Web 请求与响应过程)

[1.4 静态资源与动态资源](#1.4 静态资源与动态资源)

[1.5 Web 的发展阶段](#1.5 Web 的发展阶段)

[1.6 实验:搭建最小 Web 服务](#1.6 实验:搭建最小 Web 服务)

实验目标:

[实验步骤 : ?](#实验步骤 : ?)

[1.7 小结](#1.7 小结)

[2、HTTP 与 HTTPS 协议](#2、HTTP 与 HTTPS 协议)

[2.1 http与https区别](#2.1 http与https区别)

[2.3 HTTP状态码](#2.3 HTTP状态码)

[2.3.1 HTTP 状态码概览](#2.3.1 HTTP 状态码概览)

[2.3.2 常用状态码详解](#2.3.2 常用状态码详解)


1、Web 概念

1.1 Web 的基本概念

Web(World Wide Web,万维网)是运行在互联网之上的一个 超文本信息系统 ,它依赖于 HTTP/HTTPS 协议 实现

特点

分布式:资源分布在世界各地的服务器上。

跨平台:只要有浏览器,就能访问资源。

无状态:每次 HTTP 请求都是独立的,服务器不会记住客户端状态(除非使用Cookie/Session)。

1.2 B/S 架构模型

Web 采用 B/S 架构(Browser/Server)

Browser(浏览器):用户的入口,发送请求、渲染页面。

Server(服务器):接收请求,返回所需资源或动态内容。

1.3 Web 请求与响应过程

一次完整的 Web 访问过程包括以下步骤:

输入 URL :用户在浏览器输入 http://www.example.com

DNS 解析:浏览器将域名解析为 IP 地址。

建立连接:浏览器与 Web 服务器建立 TCP 连接(3 次握手)。

发送请求:浏览器发起 HTTP 请求(GET/POST)。

服务器处理

Web 服务器处理静态资源请求

动态请求转发到应用服务器(如 Tomcat、Django)

应用服务器可能再查询数据库

返回响应:Web 服务器将结果打包成 HTTP 响应报文返回浏览器。

渲染页面:浏览器解析 HTML、加载 CSS/JS、渲染最终页面。

1.4 静态资源与动态资源

静态资源:不需要服务器额外处理,直接返回即可。

HTML、CSS、图片、视频、JS 文件优点:速度快,压力小

动态资源:需要服务器端代码计算生成,再返回客户端。

1.5 Web 的发展阶段

Web 1.0(只读):静态页面为主,用户只能浏览。

Web 2.0(交互式):用户可生成内容,AJAX(前端) 技术普及。

Web 3.0(智能化):语义网、区块链、去中心化概念兴起。

1.6 实验:搭建最小 Web 服务

注意后面安装nginx之后再创建一个静态页面

实验目标:

体验一次最简单的 Web 请求与响应过程 Wireshark 并且抓包。

实验步骤 : ?

1.7 小结

Web 是基于 B/S 架构 的信息交互方式。

核心是 请求-响应模型,通过 HTTP/HTTPS 协议传输数据。

Web 可提供 静态资源动态资源

2、HTTP 与 HTTPS 协议

2.1 http与https区别

HTTP:明文传输,不安全。

HTTPS:在 HTTP 上加入 SSL/TLS 加密,防止中间人攻击。

TLS 握手过程(建立安全通道)

流程

客户端 Hello

浏览器发起请求,告诉服务器自己支持哪些加密算法。

服务端 Hello + 证书

网站返回 SSL 证书(证明身份),选择一种加密算法。

客户端验证证书

浏览器检查证书是否可信(CA 颁发、没过期、域名匹配)。

协商密钥

双方生成一个临时密钥,用于对称加密后续通信。

加密通信开始

后续 HTTP 数据都通过加密通道传输。

2.3 HTTP状态码

2.3.1 HTTP 状态码概览

HTTP 状态码都是 三位数字,按首位分为五类:

类型 范围 含义 大白话理解
1xx 100--199 信息性状态码 "我收到了请求,还在处理中"
2xx 200--299 成功 "请求成功,服务器给你东西了"
3xx 300--399 重定向 "你要的东西搬家了,去新地址找"
4xx 400--499 客户端错误 "你请求有问题(URL错、权限不够)"
5xx 500--599 服务器错误 "服务器出问题,暂时拿不到东西"
2.3.2 常用状态码详解

2xx 成功

状态码 含义 类比
200 OK 请求成功 "东西拿到了"
201 Created 创建成功 "你提交的表单/资源已创建"
204 No Content 成功,但没有内容 "操作成功,但没有额外东西返回"

3xx 重定向

状态码 含义 类比
301 Moved Permanently 永久搬家 "这个页面永久换地址了"
302 Found 临时搬家 "暂时换地址,下一次还用旧地址"
304 Not Modified 内容未改 "东西没变,你可以用缓存"

4xx 客户端错误

状态码 含义 类比
400 Bad Request 请求格式错 "你写的请求我看不懂"
401 Unauthorized 未认证 "先登录,再访问"
403 Forbidden 禁止访问 "你没权限"
404 Not Found 找不到页面 "东西搬走或根本没这东西"

5xx 服务器错误

状态码 含义 类比
500 Internal Server Error 服务器内部出错 "服务器崩了"
502 Bad Gateway 网关错误 "我去找别的服务器,结果那边挂了"
503 Service Unavailable 服务不可用 "服务器忙不过来了,稍后再试"
504 Gateway Timeout 网关超时 "找别的服务器太慢,超时了"

生活中的 HTTP 状态码类比

场景 状态码 对应情况
打开网页正常 200 成功拿到网页
点链接页面搬家 301/302 浏览器自动跳到新地址
输入错网址 404 "没找到这个页面"
登录需要权限 401 "先登录才能看"
网站挂了 500 "服务器出问题了"
相关推荐
格林威4 小时前
Linux使用-Linux系统管理
linux·运维·服务器·深度学习·ubuntu·计算机视觉
网硕互联的小客服4 小时前
如何配置安全的 SFTP 服务器?
运维·服务器·安全
码农101号4 小时前
Linux 网络安全运维与文件权限控制和日志操作
运维·web安全·云计算
柯南二号5 小时前
【后端】Docker 常用命令详解
服务器·nginx·docker·容器
Gss7776 小时前
Ansible 项目管理核心要点总结
linux·运维·ansible
半梦半醒*6 小时前
ansible中的角色(roles)
linux·运维·自动化·ssh·ansible·负载均衡
Insist7536 小时前
jenkins调用ansible部署lnmp平台-Discuz论坛
运维·服务器
布列瑟农的星空6 小时前
html中获取容器部署的环境变量
运维·前端·后端
工会代表6 小时前
nginx配置,将前端项目配置到子路径下踩过的坑。
前端·nginx