浅谈Web和HTTP协议结构

Web基础和HTTP协议

一、DNS解析

网络是基于TCP/IP协议进行通信和连接的,每一台主机都有一个唯一的标识,

为了保证网络上每台计算机的IP地址的唯一性,用户必须向特定机构申请注册,分配IP地址网络中的地址方案分为两套,IP地址系统和域名地址系统

/etc/hosts

在没有DNS服务器的情况下,使用本地/etc/hosts完成解析/映射,实现快速访问

/etc/resolv.conf

DNS客户端配置文件,主要用于设置DNS服务器的IP和域名,还包含了主机域名的搜索顺序等等,这个我呢见是由域名解析器使用的配置文件

/etc/sysconfig/network-scripts/ifcfg-ens33

在网卡配置文件中定义DNS1= DNS2=

生效顺序: hosts文件 >> 网卡配置文件 >> /etc/resolv.conf

二、域名的概念

1.定义:标识一组主机并提供它们有关信息的树形结构

2.域名空间结构

  • 根域

基础单位,除了根域其他都只有一个上级域

  • 顶级域

一般代表一种类型的组织机构或国家地区

  • 二级域

用来标明顶级域内的一个特定的组织,国家顶级域下面的二级域名由国家网络部门统一管理

  • 子域

子域即为主域下的一个子域名,当一个子域的流量过大时,主域的DNS服务器可以把一个子域的查询授权给一台专门的子域服务器,称为子域授权或子域委派

  • 主机

位于域名空间最下层,就是一台具体的计算机,如www、mail、都是具体的计算机名字,可用www.sina.com.cn.来表示

  • 域名注册

是Internet中用于解决地址对应问题的一种方法,遵循先申请先注册原则

三、网页

1.网页基本概念

  • 网页

纯文件格式文件,编写语言为html

  • 网站

有一个一个页面构成的,是多个网页的结合体

  • 主页

打开网站后出现的第一个网页称为网站主页

  • HTTP/HTTPS

用来传输网页的通信协议,是一种通讯/交互的标准/规范

  • URL

是一种万维网寻址系统

  • 超链接

是将网站中不同网页链接起来的功能

2.HTML文档结构

超文本标记语言
浏览器解释和执行HTML源码的工具
HTML文档的结构
HTML网页
头部部分
标题部分
主体部分
网页内容,包括文本、图像等
<html>
<head>
<title>我的第一个网页</title>
</head>
<body>
Hello World!
</body>
</html>

3.Web1.0与Web2.0区别

  • web1.0

以编辑为特征,网站提供给用户的内容是编辑处理后的,然后用户阅读网站提供内容,这个过程是网站到用户单向行为

  • web2.0

更注重用户的交互作用,用户即是网站消费者,也是网站内容的制造者,加强了网站与用户之间的互动,网站内容基于用户提供网站的诸多功能也由用户参与建设,实现了网站与用户双向的交流与参与,用户分享以兴趣为聚合点的社群开放平台,活跃的用户

4.静态页面和动态页面的区别

  • 静态网页特点

每个静态网页都有一个固定的URL,不含有“ ?”,每个静态页面都是保存在服务器上的,静态网页的内容相对稳定,页面浏览速度迅速,无需数据库,但是没有数据库的支持,交互性较差,在功能方面有较大的限制

  • 动态页面特点

网页URL不固定,能通过后台与用户交互,在动态网页网址中有一个标志性的符号“ ?”,常用语言有PHP、JSP、Python、Ruby等

四、HTTP协议

http协议是互联网上应用最为广泛的一种网络协议,它是基于TCP协议的应用层传输协议,简单来说就是客户端和服务端进行数据传输的一种规则,设计这个协议的目的是为了发布和接收web服务器上的HTML页面

1.HTTP协议版本

HTTP0.9已经过时
HTTP1.0目前用的较多*
HTTP1.1目前用的较多*
HTTP2.0最新

2.HTTP1.0和HTTP1.1之间的区别

  • 缓存处理

在HTTP1.0中主要使用header里的If-Modified-Since,Expires来做为缓存判断的标准,HTTP1.1则引入了更多的缓存控制策略Entitytag,If-Unmodified-Since,If-Match,If-None-Match等更多可供选择的缓存头来控制缓存策略

  • 带宽优化及网络连接的使用

HTTP1.0中,存在一些浪费带宽的现象,例如客户端只是需要某个对象的一部分,而服务器却将整个对象送过来了,并且不支持断点续传功能,HTTP1.1则在请求引入range头域,它允许只请求资源的某个部分,即返回码是206,这样就方便了开发者自由的选择以便于充分利用带宽和连接

  • 错误通知管理

在HTTP1.1中新增了24个错误状态响应码如409表示请求的资源与资源的当前状态发生冲突,410表示服务器上的某个资源被永久性的删除

  • Host头处理

在HTTP1.0中认为每台服务器都绑定一个唯一的TP地址,因此请求消息中的RZ并没有传递主机名,但随着虚拟主机技术的发展,在一台物理服务器上可以存在多个虚拟机,并且他们共享一个IP地址,HTTP1.1的请求消息和响应消息都应支持Host头域,且请求消息中如果没有inost头域会报告一个错误

长连接

HTTP1.1支持长连接和请求的流水线处理,在一个TCP链接上可以传送多个HTT请求和响应,减少建立关闭连接的消耗和延迟,在HTTP1.1中默认开启connection:keep-alive,一定程度上弥补了HTTP1.0,每次请求都要创建连接的缺点

3.HTTP请求格式

  • GET方式

请求行:请求方式——请求资源路径——请求的版本协议号

请求头:

Accept客户端可以接受的数据类型
Accept-Language客户端可以接受的语言类型
User-Agent浏览器的信息
Accpect-Encoding客户端可以接受的编码格式
Host表示请求的IP和端口号
Connection告诉服务器请求连接如何处理
Keep-Alive通知服务器回传数据不要马上关闭,
Closed马上关闭
  • POST请求方式

请求行:请求方式——请求资源路径——请求的版本协议号

请求头:

Accept客户端可以接受的数据类型
Accept-Language客户端可以接受的语言类型
User-Agent浏览器的信息
Content-Type发送数据类型
CPntent-Length发送数据长度

请求体:客户端可以接受的数据类型

简单理解

  • GET方法

从指定的服务器上获得数据

GET请求能被缓存

GET请求会保存在浏览器的浏览记录里

GET请求长度的限制

主要用于获取数据

查询的字符串会显示在URL中,不安全

  • POST方法

提交数据给指定服务器处理

POST请求不能被缓存

POST请求不会保存在浏览器的浏览记录里

POST请求没有长度限制

查询字符串不会显示在URL中,比较安全

4.HTTP状态码

当使用浏览器访问一个URL,会根据处理情况返回相应的处理状态

状态码已定义范围分类
1xx100-101信息提示
2xx200-206成功
3xx300-305重定向
4xx400-415客户端错误
5xx500-505服务器错误

http协议714.mp4_20220717_091023.326

HTTP协议请求流程图

http协议714.mp4_20220717_091109.297

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

masonyong

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值