目录
一、web基础和http协议:
二、dns解析的三种方式,以及优先级:
1、修改本地hosts文件,格式IP地址+域名
2、/etc/resolv.conf,申明一个值nameserver+域名
3、网卡配置文件当中的dns地址,也可以有多个
优先级:
三、分布式和集群:
1、html:超文本标记语言,是一种规范,也是一种标准,通过标记符号来标记要显示网页中的各个部分
2、超链接:
3、静态页面
4、动态页面:
4.1、动态页面的特点:
5、http协议
5.1、http的工作方式:
5.2、状态码:
5.3、http协议的版本:
5.4、http1.1特点:
5.5、http请求的方法:
5.6get方式:
web的相关基础知识,包括域名,dns解析,网页的概念以及http协议
1、网络当中通信:端口ip协议tcp/ip传输过程中我们使用的tcp协议,tcp是可靠的,安全的传输协议
三次握手,四次挥手
ip:每一台主机在互联网中的都有一个唯一的标识(IP地址),区别在网络中的不同主机和用户。
ip格式都是固定的,点分十进制,192.168.233.10
互联网当中主机与主机实现通信,靠的就是IP地址。
ip:端口--------ip+端口的形式
tcp协议通信,ip+端口
区分不同应用
ssh 22
http 80
ip是寻址,端口是对应的服务
2、IP地址不好记,180.101.50.242,由此引申出了域名
dns域名解析,就是把域名解析成ip地址,访问域名,实质上还是在访问IP地址
例如:192.168.233.21 www.zhupeilong.com,实质上访问的还是IP地址
Linux在/etc/hosts,本地解析的速度是最快的
IP地址和域名之间形成映射关系
例如nameserver 218.2.135.1
由运营商提供的dns解析的服务器端的IP地址
可以有多个,配置完之后无需重启任何服务器
dns1=8.8.8.8
配置完成要生效,必须重启网卡设备
本地hosts文件------网卡配置文件------/etc/resolv.conf(运营商)
把计算机系统或者应用程序分别部署正在多台独立的计算机或者服务器上,计算机或者服务器通过网络通信和协作,共同完成特定的任务或者提供服务。
集群:集群式分布式的一种扩展,建立在分布式的基础之上,在每个工作节点上,用多台服务器或者计算机连接在一起,形成一个单一的计算资源池。这些计算机通过网络连接,共享任务和资源负载,实现高性能和高可用。集群当中的服务器一般都是由相同规格的计算机组成,运行相同的应用程序或者服务。
分布式:把一个整体的服务进行拆分,把每个节点只负责特定的功能
集群:集群建立在分布式的基础上,每个节点都添加多个规格相同,功能一致的服务器,实现高性能(提高处理速度),高可用(可以实现冗余)负载均衡(在最大分配上。实现每个机器都可以参与到工作当中来)
域名:分布式结构
www.baidu.com.cn.
.顶级域,根域
中国有根域服务器的镜像服务器。
ipv6中国有ipv6的根域服务器。都会有两个地址,ipv4,ipv6.
cn.顶级域—般表示国家地区
com.cn.:二级域com商业机构,edu.教育机构,net.:运营商工
子域:三级域,baidu需要注册申请
www:主机名,www对应的就是一台计算机
本身就是一个文本文件,添加标记符,告诉了浏览器如何显示其中的内容。
.html.htm
网页的概念:网页:纯文本的格式,编写的语言:html
翻译语言:浏览器翻译
网站:由多个网页组成的结合体
打开一个网站,展现的第一个页面就是网页的主页(首页)
域名:网站的访问地址
传输内容:http/https
URL: 哔哩哔哩 (゜-゜)つロ 干杯~-bilibili
完整的连接就是URL
URI: /v/dance/otaku匹配网站的分支页面
网站中不同页面连接起来的功能。
html语法规则:
1、双标记符
文件结构:
标签 网页显示的内容表格
字体
定义图片
web:全球广域网,万维网,一种分布式图形信息系统。
建立在internet上的一种网络服务
web1.0已经淘汰,只能提供访问页面。
web2.0:交互,用户即是网页内容的消费者,同时还是网站内容的制造者,加强了网站和用户之间的互动。内容可以由用户来提供,web2.0,用户和网站之间可以双向交流。
静态页面:标准的html文件,一般以.html.htm为文件结尾。
文本,图像,声音,动画。
网站建设的基础,早期的网站都是静态页面。
没有后台数据库,也不包含交互的功能
更新比较麻烦,一般适用于展示型网站
静态页面都有固定的地址(URL)。
内容稳定,容易被搜索引擎检索。
没有数据库,也没有交互,访问速度很快。
网页url不是固定的。后台:数据库
动态页面中的url当中有一个标志性?
编写语言:PHP ISP python ruby
1、交互性
2、自动更新
3、页面内容是不断变化的。
web3.0:沉浸式体验,元宇宙,头号玩家
http:超文本传输协议。互联网上应用最广泛的网络协议,基于tcp协议的应用层传输协议。
客户端和服务端之间的传输规则。
http是应用层上的协议,建立在传输层上tcp之上,客户端和服务端进行tcp连接。
三次握手之后建立连接。
建立连接之后发送http请求与http响应都是通过socket(端口)调用来实现数据传输。
http是一种无状态协议:连接状态不是由ht.tp自己控制。而且http协议本身不会对请求和响应的通信状态进行持久化处理
连接保持(http1.1,可以实现连接保持)
会话保持(cookie)
cookie:缓存数据,记录用户的登录状态,跟踪统计用户访问网站的习惯,识别用户的身份(保存账号密码),保存在计本地算机的一个小文件上,但是有效性(30天,长的半年,而且可以人工控制)
会话保持:在访问网站时,用户所有行为和状态是统一的。
连接保持: tcp协议的连接状态的控制。
手机通话:13770725190
拨打电话---------尝试建立连接--------接听我的电话--------建立连接-------通信(双方之间进行信息的交流)……断[开连接(断开的不是连接,而是双方之间不再用数据传输),四次挥手之后,并不是断开连接,而是双方之间进入新的tcp连接状态(time_wait) 60-120秒
大型的时间会长一点,例如华为商城(180),time_wait核心:即使双方不在传输数据,但是连接并没有断开,双方继续传输数据,不需要再三次握手,可以直接再次发起数据传输,避免了频繁请求,造成资源大量占用。
1、建立连接,http协议的默认端口:80
客户端向服务端的80端口发送连接请求。
请求的方式:get,post
2、服务端处理请求:根据请求的方式,请求的内容作出相应的处理。
3、服务端返回响应:处理请求完成之后,会生成一个http响应,响应行包含状态码:对客户端请求的处理结果。
响应码的类型以及响应状态码的含义:
1xx 100-101 信息提示
2xx 200 请求成功
3xx 300-305 重定向(页面跳转),304 请求本地缓存
4xx 400-415 客户端错误
5xx 500-505 服务端错误
200 ok 请求成功
301 永久重定向
302 临时重定向
403 禁止访问该页面
404 服务端无法找到客户端要请求的页面
500 内部服务器错误
502 网关失效
503 当前服务不可用
504 网关请求超时
响应之后,传输数据:通过之前和客户端建立的连接将响应发送到客户端,通过tcp连接传输数据。
数据传输完成------四次挥手------time_wait------关闭连接
https:加密的http协议,在传输数据的过程中,对通信内容进行加密,可以防止在通信的过程被窃听,篡改和伪造。
客户端和服务端之间交换密钥,进行身份验证,确保只有合法的接受方能够解密数据。
认证方式:证书认证。https用数字证书来验证服务端的身份,客户端在与服务端建立连接时,会收到服务端的数字证书,确认服务端的真实性和合法性,确认客户端连接到正确的服务器。
URL的信息是经过加密的。
搜索引擎和排名是优先排名,https可以在搜索引擎当中被优先检索,鼓励网站使用https
性能:数据传输加密,解密,性能降低的问·题。但是已现任的算法和硬件技术,这种消耗可儿乎可以忍忽略不计。 数字证书:第三方证书办法机构,CA
基本上网站都是https。
http 0.9已淘汰
http 1.1(链接保持):他是一次性获取页面的所有内容,包括图片,文字,还有影像。
https:4443。1.1主要为https提供服务(主流)
https2.0:1.1的升级版,提高性能和加载速度(很少)
1、缓存机制(第三方提供cookie)http1.1的缓存功能主要控制缓存策略
2、带宽优化,http1.1可以控制:请求的资源只能访问特定的部分,返回码是被限制的,资源是可控的。
3、长连接(连接保持):即使四次挥手,连接也没有断开,进入time_wait,keep-alive。time_wait的状态虽然占用的资源很少,但是多了也会占用服务器的大量性能,也可能影响整体的响应效率。(大网站比较关注,并发量比较高的网站),time_wait虽然也会占用资源,但是比起重新请求,资源消耗小得多。
get:只是想服务端发送请求数据,只是请求没有其他内容。
get的请求可以被缓存
get请求会被记录在cookie中
get的请求长度是受限的
主要作用是获取数据,查看
get请求的URL会显示完整的路径
1、请求头:请求行、请求资源路径、请求的协议和版本号
Accept:客户端可以解析的文件类型
Accpet-Encoding:客户端可以接受的编码格式
Accept-Language:客户端可以接受的语言类型
Cache-Control:客户端可以支持的缓存的最大时间
Connection:告诉服务端请求请求要如何处理(连接保持)
Host:请求的客户端ip和端口号
User-Agent:客户端访问服务端的操作系统和浏览器版本
2、响应头,由客户端发起,客户端请求什么,服务端就响应指定的内容
post:可以向服务端发送数据,而且可以修改后台服务器上的数据。
把数据发送到服务端,可以修改服务端的数据
post的请求没有缓存
post的请求也不会记录在cookie中
请求没有长度限制
post请求没有URL的路径显示