当前位置: 首页 > web >正文

Web相关知识(草稿)

目录

1、Web 概念

1.1 Web 的基本概念

特点

1.2 B/S 架构模型

1.3 Web 请求与响应过程

1.4 静态资源与动态资源                                                                                                        

1.5 Web 的发展阶段

1.6 实验:搭建最小 Web 服务

实验目标:

实验步骤  :                                                                                                                                   ?                                                                                                                     

1.7 小结

2、HTTP 与 HTTPS 协议

2.1 http与https区别

2.3 HTTP状态码

2.3.1 HTTP 状态码概览

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 状态码都是 三位数字,按首位分为五类:

类型范围含义大白话理解
1xx100–199信息性状态码“我收到了请求,还在处理中”
2xx200–299成功“请求成功,服务器给你东西了”
3xx300–399重定向“你要的东西搬家了,去新地址找”
4xx400–499客户端错误“你请求有问题(URL错、权限不够)”
5xx500–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“服务器出问题了”

    http://www.xdnf.cn/news/20225.html

    相关文章:

  • MySQL高可用之组复制(MGR)
  • Web基础、HTTP/HTTPS协议与Nginx详解
  • 商城系统——项目测试
  • JUC的安全并发包机制
  • Python 值传递 (Pass by Value) 和引用传递 (Pass by Reference)
  • go面试题-什么是用户态和内核态
  • 数组本身的深入解析
  • 研发文档撰写质量参差不齐该怎么办
  • 突破大语言模型推理瓶颈:深度解析依赖关系与优化策略
  • YOLOv8主干网络替换为UniConvNet的详细指南
  • Unity中,软遮罩SoftMaskForUGUI的使用
  • 25高教社杯数模国赛【E题保姆级思路+问题分析】
  • 【Day 20】148.排序链表
  • Electron 执行python脚本
  • IPV6、广播地址
  • 单片机实现分页显示环形更新的历史数据
  • 算法随笔(一)
  • S32K328上芯片内部RTC的使用和唤醒配置
  • 深度学习篇---MNIST:手写数字数据集
  • 基础排序--冒泡--选择--插入
  • 【算法--链表】25.K个一组翻转链表--通俗讲解
  • Linux初始化配置——RHEL7.9、9.3环境部署
  • 【C语言】 第三课 函数与栈帧机制详解
  • RTP打包与解包全解析:从RFC规范到跨平台轻量级RTSP服务和低延迟RTSP播放器实现
  • Deeplizard深度学习课程(七)—— 神经网络实验
  • 飞算JavaAI全面解析:重塑Java开发流程的智能引擎
  • 商城源码后端性能优化:JVM 参数调优与内存泄漏排查实战
  • List<?>和List<Object>区别
  • 第二阶段WinForm-12:UI控件库
  • 力扣516 代码随想录Day16 第一题