web基础和http协议

本文详细解释了DNS的作用、TCP/IP协议中的三次握手和四次挥手,强调了端口在通信中的角色,介绍了HTTP协议、其工作原理,以及静态和动态页面的区别。还讨论了分布式和集群技术,以及生产中常见的HTTP状态码含义。
摘要由CSDN通过智能技术生成

DNS与域名:

网络上的通信都是基于ip;TCP/IP

Tcp建立连接和断开连接,都是要双方进行确认的

建立连接:三次握手

断开连接:四次挥手

通信是端到端

端口进行通信(进程或者服务都是有指定的端口号)

http:80

nginx:80

ssh:22

mysql:3306

IP地址:端口号

Ip地址是主机在互联网上的唯一标识

Ip是确定身份,你是谁,从哪来

端口:你要访问谁

公网IP地址已经没了,现在这个唯一标识(IP地址),nat地址转换

Ip地址是一个点分十进制组成的

192.168.120.10

192.168.120:网络位

10:主机位

dns解析:

网站都是域名,dns解析的作用是把域名解析成ip地址

迭代:从根域名到二级域

递归:返回用户的过程   先到运营商——本地hosts——用户

三种方式:

/etc/hosts 本地解析,速度最快,缺点:如果需要配置的解析地址多,工作量比较大

格式

192.168.120.10 www.kgc.com

访问域名就是在访问ip地址

第二个:

DNS服务器来进行解析

运营商:运营商提供一个DNS解析的ip地址

/etc/resolv.conf

格式:

nameserver 218.2.135.1

第三个方式:

网卡配置

Ifcfg-ens33

生效的顺序:

hosts文件的优先级最高————网卡配置————dns服务器(resolv.conf)

分布式和集群

分布式:把计算机系统或者应用程序分布在多台独立的计算机或者服务器上,通过网络通信以及协作,共同完成特定的任务或者服务

工作负载分散到多个节点上,提高性能和可靠性

分布式前端的nginx 分布式数据库,分布式分件系统

集群:多台计算机或者服务器连接在一块,形成一个单一的计算资源池。计算机通过网络互相连接,共享任务,集群都是由相同类型的计算机组成。运行的程序也是相同的。

作用:通过增加计算机节点,扩展系统,然后提高整体的处理能力和容量。

LNMP架构:

部署L linux

n:nginx提供网页访问

M:MYSQL数据库,保存用户名和密码

P:PHP,处理动态页面

html:超文本标记语言,也是我们最常见的网页格式。是一种规范,也是一种标准,也是一个文本文件

xxx.html

xxx.htm

网页:纯文本格式的文件 语言HTML。 浏览器来翻译html语言形成网页

网站:是由多个网页组成,网页的结合体。打开网站之后出现的第一个页面就是我们说的网站首页或者主页

域名:域名需要注册,访问网站时输入的网址就是我们说的域名

传输方式:http/https

http:超文本传输协议,https:加密的超文本传输协议。靠ssl证书进行认证。网页的传输通信协议

URL:万维网的寻址系统(唯一标识)

URI:wwwbaiducom/test/index.html

/test后面的都是URI,匹配网站不同分支的内容

超链接:超链接把网站当中的不同内容连接起来

web:world wide web 全球广域网 也就是万维网

一种分布式的图形信息系统

web1.0:就是一个字“看”,也就是看网页

web2.0:看网页,交互作用。用户不仅仅是看,还可以是网页内容的制造者。网站和用户可以双向交流。

静态页面和动态页面

静态页面只是:文本文件,可以修改,一般以.html .htm保存的文件文件。网站的基础。静态页面和后台数据库没有任何交互,不包含请求程序

更新起来比较复杂,一般适用于更新比较少的展示型的网站

一般都是网站的主页,静态页面的URL是固定的

动态页面:

  1. url不是固定的,能通过后台和用户交互
  2. 动态页面的URL当中一般有个?号
  3. 动态页面:PHP,jsp python node.js
  4. 动态页面可以自动更新
  5. 访问的时间不同,访问的内容会发生变化

http协议:

http0.9淘汰

http1.0基本淘汰

http1.1:目前最常用的https,主要服务于https,端口443

特点就是提供了加密和安全传输的端口的一种http

http2.0:新一代的加密协议,传输速度比http1.1的速度更快。

http协议:超文本传输协议,基于tcp协议的应用层传输协议。简单来说就是客户端和服务端之间进行数据传输(请求和响应网页)的一种规则。

http是应用层上的协议

建立连接:三次握手

断开连接:四次挥手

建立连接之后,客户端与服务端之间请求和接受,响应都是通过socket接口来调用tcp'协议实现。

端口到端口通信

http:本身是一种无状态协议,http协议本身不会对发送的请求和响应进行任何处理。http协议能够处理大量的事务(核心:提高效率)

http本身无状态,会带来问题:会话保持和缓存

http1.是没有会话保持这个功能,http1.1,长连接加入到了http协议当中

缓存:cookie记录用户状态,跟踪统计用户访问该网站的习惯,识别用户身份,保存客户信息。可以驻留在我们的计算机上。是一个很小的文件。保存特定的客户端和网站之间的信息数据。

时效性:30天 保存的信息就会失效

客户端的ip地址验证:安全验证

http的工作路程:

客户端—服务端的通信过程

请求—响应的模型

建立连接:tcp/ip协议与服务器建立连接(三次握手),客户端向服务器的80端口发送连接请求。

发送请求:一旦连接建立之后,客户端向服务端发送http请求。http请求:由一个请求行和多个头部字段组成。

请求方式:get post

服务端处理请求:根据请求的方式和内容进行处理。服务端会读取请求头的字段,解析参数,处理数据等等。

服务端返回响应:形成一个http响应,响应由一个响应行,包含多个字段。响应内容包含重要的内容状态码,用于表示服务端对于请求的处理结果。

传输数据:一旦服务器生成了http响应,会通过之前建立的连接将响应返回给客户端

响应当中包含了请求的资源网页内容以及其他的需要传输的数据(一般是自定义的)

关闭连接:响应发送完成,服务端就会进入连接关闭,http1.1 time wait。双方还在建立连接,双方之间不再有数据传输。一旦有新的请求,连接可以继续使用。160秒 会话保持或者长连接。

http1.1 会一次性获取页面的全部资源,然后发起四次挥手,只是不再传输数据。连接并没有断开。

客户端解析和现实响应:

客户端收到http响应之后,解析响应内容,包括页面解析,显示图片,播放视频。

主要靠的就是浏览器

客户端也可以继续发送请求,或者打开新的连接,请求其他资源

http的请求方式:

get的方式:

get向服务器发起请求的数据,依照http协议来进行,get就是请求

请求行:

请求体:

Accept:客户端可以接受的数据类型

Accept-Encoding:客户端可以接受的编码格式,以及数据是否需要压缩

Accept-Language:客户端可以接受的语言类型

Cache Controt:数据在本地缓存的时间

Connection::连接的处理方式,一般都是会话保持

Cookie:请求的ip和端口号,也可以请求的主机名

User-Agent:客户端请求使用的浏览器信息

post

post向服务端发送数据,按照http协议进行,服务器添加数据,post的请求方式会修改服务器上的数据

get'和post的区别:

get的请求可以缓存

get的请求还可以保存在浏览器的cookie中

get的请求长度有限制

get就是获取数据

post

post的请求不能被缓存,也不会保存在浏览器的cookie中

post请求没有长度限制

请求的字符串不会显示,比较安全

http的状态码:

1xx:信息提示 100-101 无实际作用

2xx:成功 请求处理结果成功 200

3xx:重定向 304表示请求的是缓存

4xx:客户端错误 403 404 请求的页面不存在或者没有权限访问

403:请求的页面禁止访问  

404:服务器无法请求的页面

5xx:服务端错误

500:内部服务器错误 (如果出现500,检查防火墙,检查进程也就是服务状态,检查端口,检查配置文件,端口号被占用)

502:无效网关  

503:请求的服务器不可用,可能下线了

504:网管请求超时

生产中常见的状态码

200:ok表示请求成功

301:永久重定向

302:临时重定向

304:访问的是本地缓存

403:FOrbidden 禁止客户端访问该页面

404:NOT FOUND 服务器无法找到被请求的页面

500:inetnal server error 内部服务器错误

502:BAD getway 网关失效。(服务端的网关失效)

503:server Unavailable 服务器不可用(网站维护)

504:GATEWAY timeout 网关请求超时(服务端处于维护或者路由器故障)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值