Web与HTTP

目录

DNS与域名

DNS解析的方式

过程

注册域名

html

名词解释

html的语法

web

web2.0

静态页面特点

动态页面

动态页面特点

http协议

工作流程

http的请求方式

get

post

状态码

常用状态码

通信套接字

套接字调用的端口


DNS与域名

网络是基于tcp/ip协议进行通信和连接的
应用层--传输层--网络层--数据链路层--物理层
ip地址是每台主机都有一个唯一的地址标识(固定的IP地址),用于区分用户和计算机,进行通信。
IP地址都是由32位二进制数组成的,不方便记忆,所以就衍生出域名
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.准备材料
2.域名注册网站注册、申请
3.正式使用

html

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

名词解释

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

网站

是由多个页面组成的,网页的结合体。主页:打开网站的之后出现的第一个页面就是网站的主页域名 浏览网页时输入的网址

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

URL
万维网寻址系统,唯一标识
https://www.bilibili.com/完整的格式,是url
uri
https://www.bilibili.com/v/dance/?spm id from=333.1007.0.0
从/v/开始就是uri

超链接
超链接将网站中的不同页面连接起来
发布
将制作好的网页上传到服务器,供用户访问

html的语法

<head> 网页的内容描述</head>
<body>网页的内容</body>
</html>

头标签中常用的标签
<title> 定义了文档的标题
<base> 定义了页面链接标签的默认链接地址
<link> 定义了一个文档和外部资源之间的关系
<meta> 定义了 HTML 文档中的元数据
<script> 定义了客户端的脚本文件
<style> 定义了 HTML 文档的样式文件

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

web

web2.0

注重用户交互,有了静态页面和动态页面
静态页面就是标准的html文件,扩展名都是.htm和.html,里面可以包含图片、文本、声音、动画。
是网站建设的基础,早期的网站都是静态页面,没有后台数据,不包含可交互的内容
更新起来比较麻烦,一般用与展示型网站

web3.0 交互、场景融合

静态页面特点

1.静态页面的URL是固定的,一般不包含?
2.页面一经发布,都是保存在网站的服务器上的
3.静态页面相对稳定,内容很少发生变化,容易被搜索引擎检索
4.没有数据库的支持,制作和维护的工作量比较大。网站的信息量如果太大,单纯使用静态页面比较困难
5.没有交互性,功能上受限很大
6.浏览速度很快,不需要连接数据库

动态页面

1.网页的url是不固定的,用户可以和后台数据进行交互
2.动态页面的网址中一般会包含特殊标记?
3.动态页面的语言: PHP JSP PYTHON RUBY TOMCAT

动态页面特点

1.交互性
2.自动更新
3.特效,每个人进入页面时,会有不同的效果

http协议

http协议,超文本传输协议,是互联网上应用最广泛的网络协议之一。是基于tcp协议的应用层传输协议。面向用户,是客户端和服务端进行数据传输的一种规则

http是一种无状态的协议,本身不会对发送过的请求和响应的通信进行持久化处理(不会进行连接保持)。为了让http能够快速的大量的进行处理事务,提高效率
cookie 记录用户的登陆状态,跟踪统计用户访问网站的习惯,识别用户身份,保存用户信息

http1.1版本的http协议本身自带的连接保持功能,也叫做长连接
长连接:一次性获取页面文件的所有信息,不再需要分开处理请求。所以速度大大加快。
连接保持 keep-alive,在一个tcp连接上可以传送多个http的请求和响应,减少了建立和关闭连接的消耗和延迟,连接保持是有时间的,不是无限的,默认为60秒

连接资源占用 
长时间的保持会降低服务器的负载,如果是高并发,会使服务器耗尽资源
连接状态管理 
长连接需要维护连接状态。服务器需要跟踪每个连接的状态,增加服务器的负担。(集群的诞生)

https:加密通信协议,加密数据传输。加密过程涉及客户端和服务器之间进行密钥交换,确保只有合法的接受方,能够解密数据。
证书:https使用数字证书验证身份
加密解密会对访问速度有一定影响

工作流程

1.客户端和服务端进行tcp连接,三次握手建立连接
2.客户端发送http请求,服务端接收到http请求之后,响应客户端的请求
3.通过socket接口进行通信
4.响应到达客户端,浏览器解析,用户访问
5.访问结束后,四次挥手断开连接

http的请求方式

请求头
请求头当中包含请求体

请求体当中的内容
Accept 客户端可以接收的内容
Accept-Encoding 客户端可以接收的编码格式
Accept-Language 客户端支持的语言类型
Cache-Control 缓存时间,图片或者音频文件的缓存文件。指的是保留在本地的时间,下一次再访问图片,不需要再去服务端发起请求了,提高访问速度
Connection 告诉服务器处理请求连接。一般默认都是keep-alive,连接保持。

get

 http当中get就是用来向服务器发起请求
1.从指定服务器获取数据
2.get请求可以被缓存
3.get请求会保存在浏览器的记录在,cookie
4.get请求的长度是有限制的

post

post也是请求的一种,post是向后台发数据,服务器会添加数据,也可以改变服务器上的数据。
1.提交数据给服务器处理
2.post请求不能缓存
3.post请求也不会记录在浏览器的记录当中
4.请求体的长度也没有限制

状态码

状态码(响应码),由服务器进行提供。请求之后,服务器收到请求,会有一个响应,同时会反馈一个响应码

请求状态的响应码
1xx 100-101 信息提示
2xx 200-206 成功
3xx 300-305 重定向
4xx 400-415 客户端错误 请求失败
5xx 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 关闭连接
 

  • 9
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值