dns于域名: 网络是基于tcp/ip协议进行通信和连接的 应用层--传输层---网络层----数据链路层-----物理层
ip地址,我们每一台主机都有一个唯一的地址标识(固定的ip地址),作用是区分用户和计算机通信。
ip地址: 192.168.233.61 32位二进制数组成的,不方便记忆. 域名: www,baidu.com dns解析: 就是把域名解析成IP地址,方便通信
dns解析的方式:
1、/etc/hosts
-
负责快速解析的文件,包含了ip与主机名之间的映射关系。如果没有dns服务器的情况下,可以使用/etc/hosts文件来完成解析和映射。
2、/etc/resolv.conf
-
dns客户端的配置文件,设置dns服务器的ip和域名。还包含了主机域名的搜索顺序。主要是城名解析服务器使用的配置文件
3、修改网卡配置文件
-
ifcfig ens33
生效顺序: 1、hosts 2、网卡配置文件 3、resolv.conf
dns域名解析服务器,由运营商来做
域名解析服务器的作用:
1、保持和维护域名空间
2、响应解析请求
解析端: (客户端) 根域-----------顶级域------------二级域--------子域---------主机名
注册域名: 准备材料------域名注册网站-------------注册,申请----->正式使用
html:超文本标记语言,是一种规范的、标准的语言格式。
网页文件本身就是一个文本文件,html通过标记的方式,告诉浏览器怎么显示文本当中的内容。html文件是以个文本文件,所有能够生成 .txt文件的工具,都可以进行编辑,修改的之后的文件后缀名 .html 或 .htm
网页: 纯文本格式的文件,用html语言来进行编写的。
网站:是由多个页面组成的,网页的结合体。
主页: 打开网站之后出现的第一个页面就是网站的主页,(首页。)
域名:浏览网页时输入的网址
http/https 用来传输页面的通信协议,https就是加密的,是一种通信协议,基于tCp协议,端口号:htto默认是80,https默认:443
超链接: 超链接将网站中的不同页面连接起来。
发布 : 将制作好的网页上传到服务器,供用户访问。
html的语法:
<htm1>
<head> 网页的内容描述</head>
<body>网页的内容</body>
</htm1>
头标签中常用的标签:
<title> 定义了文档的标题
<base> 定义了页面链接标签的默认链接地址
<link> 定义了一个文档和外部资源之间的关系
<meta> 定义了 HTML 文档中的元数据
<script> 定义了客户端的脚本文件
<style> 定义了 HTML 文档的样式文件
内容当中常用的标签
<table> 定义表格
<tr> 定义表格中的一行
<td> 定义表格当中某一行的一列
<img> 定义图片
<a> 超链接
<font> 定义字体
web2.0 用户交互
静态页面和动态页面
静态页面就是标准的html
文件扩展名都是.htm 或 .html
里面可以包含图片、文本、声音、动画。
是网站建设的基础,早期的网站都是静态页面
没有后台数据,不包含可交互的内容
更新起来比较麻烦,一般用于展示型网站.
静态页面的特点:
-
静态页面的URL是固定的。一般不包含?
-
页面一经发布,都是保存在网站的服务器上的
-
静态页面相对稳定,内容很少发生变化,容易被搜索引擎检索。
-
没有数据库的支持,制作和维护的工作量比较大。网站的信息量如果太大,单纯使用静态页面比较困难
-
没有交互性,只能看,功能上受限很大
-
浏览速度很快,因为不需要连接后端数据库
动态页面:
-
网页url是不固定的,用户可以和后台数据进行交互
-
动态页面的网址中一般会包含一个特殊标记-------?
-
动态页面的语言: PHP、ISP、PYTHON、RUBY、TOMCAT (AVA)
动态页面的特点 :
-
交互性
-
自动更新
-
特效,每个人进入页面的时候,会有不同的效果
总结 :静态页面就是只能看,动态页面交互、互动
http协议:
httpd程序名,apache服务名 http协议,超文本传输协议。互联网上应用最广泛的网络协议之一基于tp协议的应用层的传输协议。面向用户。客户端和服务端之间进行数据传输的一种规则。
工作流程:
-
客户端和服务端进行tcp连接。 三次握手-----建立连接
-
客户端发送http请求,服务端接受到http请求之后,响应客户端的请求
-
socket接口,通过端口进行通信
-
响应达到客户端,解析的过程(浏览器),用户查看,使用,访问。
-
访问,使用,查看,结束之后,断开连接,四次挥手
http是一种无状态的协议,本身不会对发送过的请求和响应的通信进行持久化处理。连接保持为了让http能够快速的大量的进行处理事务,提高效率连接保持是需要的 cookie: 记录用户的登录状态,跟踪统计用具访问网站的习惯,识别用户身份,保存用户信息。 这个是服务器留在用户计算机上的小文件。
http协议本身自带的连接保持功能
- http 0.9 已淘汰
- http 1.0 基本淘汰
- http1.1 自带链接保持功能,长连接
长连接的特点:
-
一次性获取页面文件的所有信息,不再需要分开处理请求。所以速度大大加快。并行。
-
连接保持 :keep-alive,在一个tcp连接上,可以传送多个http的请求和响应。减少了建立和关闭连接的消耗和延迟。
弊端 :连接保持是有时间的,不是无限的。默认开启的。60秒
连接资源占用:
-
长时间保持,会降低服务器的负载,如果是高并发,会使服务器耗尽资源
连接状态管理:
-
长连接需要维护连接状态。服务器需要跟踪每个连接的状态,增加服务器的负担。(集群的诞生)
http的请求方式
1、请求头,请求头当中包含请求体。
请求体当中的内容:
- Accept: 客户端可以接受的数据类型
- Accept-Encoding: 客户端可以接受的编码格式
- Accept-Language: 客户端可以支持的语言类型
- Cache-Control: 缓存时间,图片或者音频文件的缓存时间。
缓存指的是保留在本地的时间,下一次再访问图片,不需要再去服务端发起请求了,提高访问速度
- Connection: 告诉服务器处理请求连接。一般默认都keep-alive,连接保持,默认65秒
- keep-alive: 告诉服务器,别急着关闭连接,保持一下段时间
请求方式:
- get 就是用来向服务器发起请求。http协议中的get,就是请求
- post也是请求的一种,post是向后台发数据。向服务器添加数据,也可以改变服务器上的数据
get方法:
-
从指定服务器获取数据
-
get请求是可以被缓存
-
get请求会保存在浏览器的记录中,cookie
-
get请求的长度,是有限制的 获取数据
post方法:
也是请求的一种,提交数据给服务器处理
-
post请求不能缓存
-
post请求也不会记录在浏览器的记录当中
-
请求体的长度也没有限制
状态码,响应码,服务器来进行提供的:
请求之后,服务器收到请求,会有一个回应,响应,同时会反馈一个响应码
请求状态的响应码:(五种)
- 1xx :100-101 信息提示
- 2xx :200-206 请求成功 只要状态码是200统统是成功
- 3xx :300-305 重定向
- 4xx : 400-415 客户端错误 请求失败,获取资源失败
- 5xx : 500-505 服务端错误 响应失败
补充:
- 200 : 成功 OK
- 301 : 请求的永久页面跳转
- 304 : 重定向到缓存
- 403 : 静止访问
- 404 : 请求页面找不到
- 500 : 服务器内部错误
- 502 : 网关失效
- 503 : 服务不可用
- 504 :网关请求超时
通信套接字:socket:
实现不同主机进行通信和数据交换进间传输的标志: ip 和 端口
http协议当中socket的作用:
- 客户端套接字: 定义唯一的客户进程
- 服务端套接字:定义了一个唯一的服务器进程
套接字调用的相关接口
- socket() 创建端口
- bind() 绑定ip和端口
- listen() 监听,等待连接
- accept() 接受请求
- connect() 请求连接建立
- write() 发送 read () 接受
- ESTABLISHED () 连接已经建立,正在传输数据
- close() 关闭连接