目录
HTML前置基础知识
1、id和class区别:
2、一些常用的属性:
3、HTML字符编码和实体编码
4、URL介绍
网址的组成部分:
TTL值
DNS工作原理和资源记录及其种类:
5、正确区分“加密”和“签名”
6、状态码
1xx (信息性状态码):表示请求已经被接收,需要继续处理。
2xx (成功状态码):表示请求已经被成功接收、理解、接受、并处理。
3xx (重定向状态码):表示需要客户端进一步操作才能完成请求。
4xx (客户端错误状态码):表示客户端发生错误,服务器无法处理请求。
5xx (服务器错误状态码):表示服务器在处理请求过程中发生了错误。
HTML前置基础知识
1、id和class区别:
相同点:
- 两者都是用来标识HTML元素的属性
不同点:
- id属性是唯一的,每个HTML元素只能有一个id1属性,而class属性可以重复使用
- id属性可以用来作为锚点链接的目标,而class属性不可以
注意:id属性的优先级高于class属性,当两者的CSS样式冲突时,id属性的样式会覆盖class属性的样式
2、一些常用的属性:
title属性:用来为元素添加附加说明。大多数浏览器中,鼠标悬浮在元素上面时,会将title属性值作为浮动提示,显示出来。
style属性:用来指定当前元素的 CSS 样式
data属性:用于放置自定义数据。如果没有其他属性或元素合适放置数据,就可以放在data属性。事件处理属性:除了上面这些属性,全局属性还包括事件处理属性(event handler),用来响应用户的动作。这些属性的值都是 JavaScript 代码(特点:时间处理属性很多都是on+***的格式)
tabindex属性:
tabindex是HTML中的一个属性,用于指定元素的tab键顺序。tab键顺序是指用户按下tab键时,浏览器中元素的聚焦顺序。
tabindex属性可以为元素指定一个整数值,值越小,该元素在tab键顺序中的位置越靠前。如果多个元素的tabindex值相同,则它们的聚焦顺序按照它们在HTML文档中的顺序来决定。
tabindex属性值的三种类型:
-
负整数:该元素可以获得焦点(比如使用 JavaScript 的focus()方法),但不参与 Tab 键对网页元素的遍历。这个值通常是-1。
-
0:该元素参与 Tab 键的遍历,顺序由浏览器指定,通常是按照其在网页里面出现的位置。
-
正整数:网页元素按照从小到大的顺序(1、2、3、……),参与 Tab 键的遍历。如果多个元素的tabindex属性相同,则按照在网页源码里面出现的顺序遍历。
tabindex属性的作用:控制tab键顺序:通过设置tabindex属性,可以控制用户按下tab键时,浏览器中元素的聚焦顺序,从而提高页面的可访问性。
3、HTML字符编码和实体编码
字符的数字表示法:字符的码点表示法是&#N;(十进制,N代表码点)或者&#xN;(十六进制,N代表码点),比如,字符a可以写成a(十进制)或者a(十六进制),字符中可以写成中(十进制)或者中(十六进制),浏览器会自动转换它们。
注意:HTML标签本身不能适应码点表示,否则浏览器会认为这是所要显示的文本内容,而不是标签
例如:
十进制: <p>hello</p>
十六进制:<p>herru</p>
字符的实体表示法:
最常见的几个:<:< >:> ":" ':' &:& 空格: 
例如:
<script>
alert(999)
</script>
运行结果:
<script> alert(999)
4、URL介绍
只要资源可以通过互联网访问,它就必然对应的URL。
一个URL对应一个资源,但是同一个资源可能对应多个URL。
用户只要点击,就可以从一个URL跳转到另外一个URL,前往不同的网站。
网址的组成部分:
- 协议():是浏览器请求服务器资源的方法,例如http://
- 主机:主机(host)是资源所在的王占明或者服务器名字,又称为域名例如www.baidu.com
- 端口:同一个域名下面可能同时包含多个网站,他们之间通过端口(port)区分,例如:HTTP的端口为80
- 路径:是资源在网站的位置,例如:/path/index.html
- 查询参数(GET/POST):查询参数(parameter)是提供给服务器的额外信息
- 锚点(anchor):是网页内部的定位点,使用#加上锚点的名称,放在网址的最后,比如#anchor。浏览器加载页面以后,会自动滚动到锚点所在位置。
TTL值
问题:在使用物理机的命令行中使用ping命令ping百度时TTL值会减小,但是使用虚拟机使用ping命令ping百度时TTL值不会减少。
问题的原因:因为虚拟使用NAT的方式访问公网,在使用虚拟机ping公网时其实ping1的是分给给自己ip的主机,所以当使用虚拟机ping公网时TTL值不会减少。
DNS工作原理和资源记录及其种类:
工作原理:
- 在浏览器www.qq.com域名,操作系统会先检查自己本地的hosts文件是否有这个网址映射关系,如果有,就先调用这个ip地址映射,完成域名解析。
- 如果hosts里没有这个域名的映射,则查找本地DNS解析器缓存,是否有这个网址映射关系,如果有,直接返回,完成域名解析。
- 如果hosts与本地DNS解析器缓存都没有相应的网址映射关系,首先会找到TCP/Ip参数中设置的首选DNS服务器,在此我们叫它本地DNS服务器,此服务器收到查询时,如果要查询的域名包含在本地配置区域资源中,则返回解析结果给客户机,完成域名解析,此解析具有权威性。
- 如果要查询的域名,不由本地DNS服务器解析,但该服务器已经缓存了此网页映射关系,则调用这个ip地址映射,完成域名解析,此解析不具有权威性。
- 如果本地DNS服务器本地区域文件与缓存解析都失效,则根据本地DNS服务器的设置(是否设置转发器)进行查询,如果未用转发模式,本地DNS就把请求发送至13台根DNS,根DNS服务器收到请求后会判断这个域名(.com)是谁来授权管理,并且返回一个负责该顶级域名服务器的一个ip。
- 本地DNS服务器:收到ip信息后,将会联系负责.com域的这台服务器。这台负责.com域的服务器收到请求后,如果自己无法解析,它会找到一个管理qq.com的DNS服务器地址给本地DNS服务器。当本地DNS服务器收到这个地址后,就会找qq.com域服务器,重复上面的动作,进行查询,直到找到www.qq.com主机
- 如果用的是转发模式,本地DNS服务器就会把请求转发至上一级DNS服务器,由上一级服务器进行解析,上一级服务器如果不能解析,或找根DNS或把请求转至上上级,以此循环。找到最后的结果返回给本地DNS服务器,由此DNS服务器再返回给客户机。(转发又分为全局转发和条件转发;)
注:从客户端到本地DNS服务器属于递归查询,而DNS服务器之间使用的交互查询就是迭代查询。
递归查询:DNS服务器接收到查询请求时,要么做出查询成功的响应,要么做出查询失败的响应。迭代查询:DNS服务器接收到查询请求后,若该服务器中不包含所需查询记录,它会告诉请求者另一台DNS服务器的IP地址,使请求者转向另一台DNS服务器继续查询,以此类推,直到查到所需记录为止,否则由最后一台DNS服务器通知请求者查询失败。
资源记录的种类:
- SOA记录:始授权(Start Of Authority)记录,每个区域都有一条SOA记录,用于指定本区域内负责解析的DNS服务器中哪个是主授权服务器,以及管理区域的负责人的邮箱地址和主、辅授权DNS服务器之间实现数据同步的控制参数
-
NS记录:域名服务器记录,用于将域名映射到区域内的授权DNS服务器。区域内每个公开的主、辅授权DNS服务器都有一条NS记录
-
A记录:也称为正向解析记录,用于说明一个域名对应的IPV4地址是什么
-
AAAA记录:ipv6记录
-
CNAME记录:别名记录,用于给主机设置一个另外的新域名,该记录是新域名到原域名的映射。此前的原域名应设置过相应的A/AAAA记录
-
PTR记录:也称为指针记录或者反向解析记录,用于将IP地址逆向映射到域名
-
MX记录:邮件交换记录,用于将属于该区域的邮件域映射到邮件服务器的域名
-
SRV记录:用于查找支持“Windows域”服务的特定主机
5、正确区分“加密”和“签名”
加密:公钥加密,私钥解密
签名:私钥加密,公钥解密
6、状态码
1xx (信息性状态码):表示请求已经被接收,需要继续处理。
100 Continue:服务器已经接收到请求头,并且客户端应该继续发送请求体。
101 Switching Protocols:服务器已经理解请求,并正在切换为新协议。
2xx (成功状态码):表示请求已经被成功接收、理解、接受、并处理。
200 OK:请求已成功响应。
201 Created:已成功创建实体,且操作完成。
202 Accepted:请求被接受,但尚未执行。
204 No Content:请求已成功响应,但没有返回任何内容。
3xx (重定向状态码):表示需要客户端进一步操作才能完成请求。
301 Moved Permanently:请求的网页已永久移动到新位置。
302 Found:请求的网页临时移动到新位置。
304 Not Modified:客户端可以使用缓存的版本。
4xx (客户端错误状态码):表示客户端发生错误,服务器无法处理请求。
400 Bad Request:请求语法错误或参数错误。
401 Unauthorized:需要身份验证才能进行访问。
403 Forbidden:客户端无权访问所请求的资源。
404 Not Found:请求的资源不存在。
5xx (服务器错误状态码):表示服务器在处理请求过程中发生了错误。
500 Internal Server Error:服务器遇到错误,无法完成请求。
502 Bad Gateway:服务器作为网关或代理,从上游服务器收到无效响应。
503 Service Unavailable:服务器暂时无法处理请求。