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

【Web】web

dns与域名

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

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

每一定的台主机都有一个唯一且固定的地址标识——IP地址

IP地址的做用:1.区分用户和计算机;2.进行通信

IP地址由32位二进制数组成,不方便记忆,因此发明了域名

dns解析:通过把域名解析成IP地址,方便通信

dns的解析方式:

1.        /etc/hosts

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

2.        /etc/resolv.conf

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

3.        修改网卡配置文件

ifcg-ens33

生效顺序:hosts——ifcg-ens33——resolve.conf

域名解析服务器

1.保持和维护域名空间

2.响应解析请求

解析端(客户端)

根域——顶级域——二级域——子域——主机名

注册域名:

准备材料(申请报备)——域名注册网站(注册)——正式使用

html:超文本语言;是一种规范的标准的语言格式

网页文件本身就是一个文本文件,html通过标记的方式,告诉浏览器如何显示文本当中的内容;

html文件是一个文本文件,所有能够生成txt文件的工具都可以进行编辑,修改之后的文件后缀名:.html或.htm

网页:由html编写的纯文本格式的文件;然后通过浏览器翻译成网页
网站:由多个页面组成,是网页的结合体;主页:打开网站后出现的第一个页面
域名:浏览网页时输入的网址

http/https

用来传输页面的通信协议,https加密,http不加密;两者都是一种基于tcp协议的通信协议

默认端口号:http 80,https 443

URL:万维网寻址系统

URL=https://域名+URI

https://www.bilibili.com/v/dance/?spm_id_from=333.1007.0.0https://域名:www.bilibili.comURI:/v/dance/?spm_id_from=333.1007.0.0

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

发布:兼职做好的网页上传至服务器,供用户访问

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.特效;每个人进入页面时,会有不同的效果

http协议:

httpd程序名:apache(阿帕奇)服务名

http协议:超文本传输协议

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

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

工作流程:
1.客户端和服务端进行tcp连接;三次握手——建立连接
2.客户端发生那个http强求,服务端接收到http强求之后,响应客户端的请求
3.通过socket端口进行通信
4.响应到达客户端,解析的过程(浏览器),用户查看、使用和访问
5.访问、使用、查看、结束之后断开连接——四次挥手

        http是一种无状态的协议,本身不会对发送的请求和相应的通信进行持久化处理;链接保持是为了能够快速、大量进行处理事物,提高效率

连接保持是需要的:
cookie:记录用户的登录状态,跟踪统计用户访问网站的习惯,识别用户身份,保存用户信息,所占空间不大http协议本身自带的连接保持功能
http0.9	已淘汰
http1.0	基本淘汰
http1.1	自带连接保持功能,也叫长连接长连接:一次性获取页面的所有信息,不再需要分开处理请求
连接保持:keep-alive,在一个tcp连接上,可以传送多个http的请求和响应,减少了建立和闭环链接的消耗消耗和延迟
连接保持是有时间的,不是无限,默认开启为60连接资源占用:长时间爆出会降低服务器的负载,如果是高开发,会使服务器好景资源
连接状态管理:长连接需要维护连接状态,服务器需要跟踪每个连接的状态,增加服务器的负担(集群诞生)
http1.1——主流

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

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

加密解密会话对方速度有一定影响

http的请求方式:

1.请求头

请求头当中包含请求体

请求体当中的内容:
Accept:客户端可以接受的数据类型
Accept-Encoding:客户端可以接受的编码格式
Accept-Language:客户端可以支持的语言类型
Cache-Control:缓存时间,图片或者音频文件的缓存时间
缓存指的是保留本地的时间,再次访问时,就不需要再去服务端发起请求了,可以提高访问速度
Connection:告诉服务器处理连接请求,一般都是keep-alive,连接保持,默认65秒
keep-alive:告诉服务器,不立即关闭,保持连接一段时间
请求方式
2.响应头

请求方式:

get:向服务器发起请求,http协议中的get,就是请求
post:也是请求的一种,post是向后台发送数据;向服务器会添加数据,也可以改变服务器上的数据get方法:
1.从指定服务器获取数据
2.get请求可以被缓存
3.get请求会保存在浏览器的记录中,cookie
4.get请求的长度,是有限制的

 获取数据:

post:也是一种请求,提交数据给服务器处理
1.post不能被缓存
2.post请求也不会被记录在浏览器的记录当中
3.请求体的长度也没有影响

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

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

***请求状态的响应码

100-101    信息提示
200-206    成功;只要状态码是200,都是请求响应成功
300-305    表示重定向
400-415    客户端错误;请求失败,无法获取资源
500-505    服务端错误;响应失败;检查配置文件200    成功
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工具的模拟实验:

[root@test1 ~]# nc -l 888                        #服务端服务端IP地址
[root@test2 ~]# nc 192.168.220.10 888            #客户端888:自定义端口号

http://www.lryc.cn/news/106450.html

相关文章:

  • css中的bfc是什么?
  • 【前端知识】React 基础巩固(四十四)——其他Hooks(useContext、useReducer、useCallback)
  • 华为云hcip核心知识笔记(数据库服务规划)
  • 【有趣的】关于Map的一些小测试
  • 【MATLAB第63期】基于MATLAB的改进敏感性分析方法IPCC,拥挤距离与皮尔逊系数法结合实现回归与分类预测
  • AI 绘画Stable Diffusion 研究(二)sd模型ControlNet1.1 介绍与安装
  • 接口参数设计原则
  • 网络安全防护利器:SK5代理与IP代理的技术对比
  • IDEA删除本地git仓库、创建本地git仓库、关联其他仓库并上传
  • JavaEE简单示例——在使用Tomcat的时候可能出现的一些报错
  • webrtc的线程模型
  • 数据库备份还原-mysqldump、mydumper、xtrabackup、压缩
  • 【黑马程序员前端】JavaScript入门到精通--20230801
  • 100道Java多线程面试题(上)
  • web开发中的安全和防御入门——csp (content-security-policy内容安全策略)
  • 定了!全国2023下半年软考(高级、中级、初级)报名时间汇总
  • Linux下安装配置Redis
  • 深度学习(33)——CycleGAN(2)
  • WeakMap and WeakSet(弱映射和弱集合)
  • 【Vue3基础】组件保持存活、异步加载组件
  • 在 3ds Max 中使用相机映射将静止图像转换为实时素材
  • 如何使用GIL解决Python多线程性能瓶颈
  • k8s概念-深入pod
  • Web服务器实验案例
  • 预警 项目经验BUG
  • 基于RFID技术的猪舍门读卡器
  • 亚马逊店铺的回款周期是多久?
  • 剑指offer19.正则表达式
  • Mac Navicat 16试用脚本
  • 什么是 webpack?