Web基础与HTTP协议 2023/8/1(笔记)

dns域名:

网络是基于tcp/ip协议进行链接和通信的

应用层----传输层----网络层----数据链路层---物理层

ip地址,我们每一台主机都有一个唯一的地址标识(固定的ip地址),区分用户和计算器通信。

IP地址:有32为二进制数组成的,不方便记忆。(192.168.3.20)

所以会有域名:www.baidu.com    然后有dns把域名解析成ip地址,方便通信。

dns解析的方式:

1.、/etc/hosts

负责快速解析的文件。包含了ip与主机名之间的映射关系。如果没有dns服务器的情况下,可以使用/etc/hosts文件来完成解析和映射。

2、/etc/resolv.conf

dns客户端的配置文件,设置dns服务器的ip和域名。还包含了主机域名的搜索顺序。主要是域名解析服务器使用的配置文件

3、修改网卡配置文件

ifcfg-ens33

生效顺序:1、hosts 2、网卡配置文件 3、resolv.conf

dns域名解析服务器,由运营商来做。

域名解析服务器:

1、保持和维持域名空间。

2、响应解析请求。

解析端:(客户端)

跟域----顶级域---二级域----子域-----主机名

注册域名:

1、准备材料----域名注册网站----注册,申请---正式使用

html:超文本标记语言,是一种规范的、标准的语言格式。网页文件本身就是一个文本文件,html通过标记的方式,告诉浏览器如何显示文本当中的内容。html文件是一个文本文件,所有能够生成txt文件的工具,都可以进行编辑,修改之后的文件后缀名:.html或者.htm

网页:纯文本格式的文件,用html语言来进行编写的。用浏览器翻译成页面的形式显示出来。

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

域名:浏览网页时输入的网址。

http/https

用来传输页面的通信协议,https就是加密的,他们都是一种通信协议,基于tcp协议,http端口号默认80,https默认端口号:443

URL:万维网寻址系统,唯一标识。

URI:

 URL包含URI

超链接:超链接将网站中的不同页面链接起来。

发布:将制作好的网页上传到服务器,供用户访问。

html的语法:

<html>

      <head>网页的内容描述     结尾</head>

           <body>网页的内容    结尾</body>

</html>

头标签中常用的标签

<title>                定义了文档的标题
<base>                定义了页面链接标签的默认链接地址
<link>                定义了一个文档和外部资源之间的关系
<meta>                定义了 HTML 文档中的元数据

页面标签的链接地址
<script>            定义了客户端的脚本文件
<style>                定义了 HTML 文档的样式文件

内容当中常用的标签

<table>  定义表格
<tr>    定义表格中的一行
<td>  定义表格当中某一行的一列
<img> 定义图片
<a>  超链接
<font> 定义字体

web2.0用户交互

静态页面和动态页面:

静态页面就是标准的html文件

扩展名都是.htm .html

里面可以包含图片,文本,声音,动画

是网站建设的基础,早期的网站都是静态页面

没有后台数据,不包含可交互的内容

更新起来比较麻烦,一般用于展示型网站。

静态页面特点:

1、静态页面的URL是固定的。一般不包含?

2、页面一经发布,都是保存在网站服务器上的

3、静态页面相对稳定,内容很少发生变化,容易被搜索引擎检索。

4、没有数控库的支持,制作和维护的工作量比较大。网站的信息量如果太大,单纯使用静态页面比较困难

5、没有交互性,只能看,功能上受限很大。

6、浏览速度很快,因为不需要连接后端数据库。

动态页面:

1、网页url是不固定的,用户可以和后台数据进行交互

2、动态页面的网址中一般会包含一个特殊标记---------?

3、动态页面的语言:PHP JSP  PYTHON RUBY TOMCAT (JAVA)

动态页面的特点:

1、交互性

2、自动更新

3、特效,每个人进入页面的时候,会有不同效果。

总结:

web1.0 静态页面: 看

web2.0动态页面:交互

http协议:

hpptd程序名,apache服务名

http协议,超文本传输协议。互联网上应用最广泛的网络协议之一。

基于tcp协议的应用层的传输协议。面向用户。

客户端和服务端之间进行数据传输的一种规则

工作流程:

1、客户端和服务端进行tcp连接。

三次握手---建立连接。

2、客户端发送http请求,服务端接受http请求之后,响应客户端的请求。

3、socket接口,通过端口进行通信。

4、响应达到客户端,解析的过程(浏览器),用户查看,使用,访问。

5、访问,使用,查看,结束之后,断开连接,四次挥手

http是一种无状态的协议,本身不会对发送过的请求和响应的通信进行持久化处理。链接保持

为了让http能够快速的大量的进行处理事务,提高效率。连接保持是需要的。

cookie:记录用户的登录状态,跟踪统计用户访问网站的习惯,识别用户身份,保存用户信息。

这个是服务器留在用户计算机上的小文件。

http协议本身自带的连接保持功能
http 0.9
http 1.0
http 1.1 自带链接保持功能,长连接。

长连接:一次性获取页面文件的所有信息,不再需要分开处理请求。所以速度大大加快 。并行。

连接保持:keep-alive,在一个tcp连接上,可以传送多个http的请求和相应。减少了建立和关闭连接的消耗和延迟。连接保持是有时间的,不是无限的。默认开启的,60秒

连接资源占用:长时间保持,会降低服务器的负载,如果是高并发,会使服务器耗尽资源。

连接状态管理: 长连接需要维护连接状态。服务器需要跟踪每个连接的状态,增加服务器的负担。(集群的诞生)

市场目前主流:

http: 1.1

https:加密通信协议,加密数据传输。加密过程涉及客户端和服务器之间进行密钥交换,确保只有合法的接收方,能够解密数据。

证书:https使用数字证书验证身份。

https:电子商务,银行网站

加密解密会对访问速度有一定影响。

http的请求方式:
1、请求头
请求头当中包含请求体。
请求体当中的内容:
Accept;客户端可以接受的数据类型
Accept-Encoding: 客户端可以接受的编码格式

Accept-Language:客户端可以支持的语言类型。

Cache-Control:缓存时间,图片或者音频文件的缓存时间。

缓存指的是保留在本地的时间,下一次再访问图片,不需要再去服务端发起请求了,提高访问速度

Connection: 告诉服务器外理请求连接。。一般默认都是keep-alive,连接保持,默认65秒 。

keep-alive:告诉服务器,别急着关闭连接,保持一段时间。

请求方式: get 就是用来向服务器发起请求。http协议中的get,就是请求。
post也是请求的一种,post是向后台发数据。服务器会添加数据,也可以改变服务器上的数据。

 get方法:
1、从指定服务器获取数据
2、get请求是可以被缓存
3、get请求会保存在浏览器的记录中,cookie
4、get请求的长度,是有限制的

post:
也是请求的一种,提交数据给服务器处理
1、post请求不能缓存
2、post请求也不会记录在浏览器的记录当中

3、请求体的长度也没有限制

---------------------------------------------------------------------------------------------------------------------------------

★★★★★状态码★★★★★★面试会问

状态码,响应码,服务器来进行提供的:

请求之后,服务器收到请求,会有一个回应,响应,同时会反馈一个响应吗。

请求状态的响应码:

1xx

2xx

3xx

4xx

5xx

100-101 信息提示

200-206 成功  只要状态码是200,统统是成功。

300-305 重定向

400-415 客户端错误 请求失败 ,获取资源失败

500-505 服务端错误 响应失败

200:成功 ok

301:请求永久页面跳转。

304:重定向到缓存。

403:禁止访问。

404:请求页面找不到

500:服务器内部错误

502:网关失效

503:服务不可用

504:网关请求超时。

---------------------------------------------------------------------------------------------------------------------------------

通讯套接字:

socket:

实现不同主机进行通信和数据交换,

进程间传输的标志:ip,端口

http协议当中socket的作用:

1、客户端套接字:定义唯一的客户进程。

2、服务端套接字:定义了一个唯一的服务器进程。

套接字调用的相关接口

socket()创建端口

bind()绑定ip和端口

listen()监听,等待连接

accept()接受请求

connect()请求连接建立

write()发送

read()接受

ESTABLISHED 连接已经建立,正在传输数据

close()关闭连接

nc工具的模拟实验

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值