二阶段web基础与http协议

dns与域名

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

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

ip地址,每一台主机都有一个唯一的地址标识(固定的ip地址)

1.区分用户和计算机

2.通信

ip地址的问题在于32位二进制数组成的,不方便记忆

                     192.168.233.61 点分十进制

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.响应解析请求

解析端(客户端)

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

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

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

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

网站:是由多个页面组成的,网页的结合体

主页:打开网站后,出现的第一个页面,就是网站的主页,也可以说是首页

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

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

URL:万维网寻址系统,唯一的表示

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

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

html的语法

<html> 

    <head>网页的内容描述信息</head> 

    <body>网页的具体内容</body>

</html>

头标前中常用的标签

<title>文档标题

<base>页面标签的链接地址

<script>客户端的脚本文件

<style>html文档的样式

内容当中常用的标签

<table>定义表格

<tr>定义表格中的一行

<td>定义表格中某一行的一列

<img>定义图片

<a>超链接

<font>定义字体

web.1.0 静态页面就是看   web.2.0 动态页面用户交互

静态页面和动态页面

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

扩展名都是.htm .html

里面可以包含图片,文本,声音动画;是网站搭建的基础,早期的网站都是静态页面,没有后台数据,不包含可交互的内容,更新起来比较麻烦,一般用于展示型网站

静态页面的特点

1.URL是固定的,一般不包含以?为后缀

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

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

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

5.没有交互性,功能上受限很大

6.浏览速度快,因为不需要连接数据库

动态页面

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

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

3.动态页面的语言:php jsp python buby tomcat(java)

动态页面的特点

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

http协议:

httpd 程序名 apache 服务名

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

工作流程:

1.客户端和服务端进行tcp链接 :三次握手----建立连接

2.客户端发送http请求,服务端接收到http请求之后,响应客户端的请求

3.socke 接口,通过端口进行通信

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

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

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

链接保持是需要的

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

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

http协议本身自带的连接保持功能

http1.1:自带链接保持功能,长连接

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

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

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

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

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

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

https:电子商务,银行网站

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

http的请求方式:

1.请求头

请求头当中包含请求体

请求体当中的内容

Accept:客户端可以接受的数据类型
Accept-Language:客户端可以接受的语言类型
User-Agent:浏览器的信息
Accpect-Encoding:客户端可以接受的编码格式
Host:表示请求的ip和端口号
Connection:告诉服务器请求连接如何处理
Keep-Alive:通知服务器回传数据不要马上关闭,保持一小段的连接
Closed:马上关闭

请求方式:get 就是用来向服务器发起请求,http协议中的get,就是请求

2.响应头

3.总览 General

post也是请求的一种,post是向后台发数据,向服务器会添加数据,也可以改变服务器上的数据

get方法:

1.从指定服务器获取数据

2.get请求是可以被缓存

3.get请求会保存在浏览器上的记录中,cookie

4.get请求的长度,是有限度的

post:也是请求的一种,提交数据给服务器处理

1.post请求不能缓存

2.post请求也不会记录在浏览器的记录当中

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

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

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

请求状态的响应码:

1..:100-101 信息提示

2..:200-206 成功,请求响应成功,只要状态码是200,统统是成功

3..:300-305 重定向

4..:400-415 客户端错误,请求不到,获取资源失败

5..: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 () 接收 

close 关闭连接

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

nc 工具模拟实验

需要关防火墙 安全机制

自定义一个端口

 

ip地址是创建555端口的ip地址

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

- joke

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值