DNS解析过程
第一步,浏览器缓存
当用户在浏览器输入 www.baidu.com时 , 浏览器会先检查自己的缓存,如果有这个域名,就与其映射的IP地址建立链接,解析完成
第二步,本地系统缓存
如果浏览器缓存没找到,就检查本地操作系统的缓存,如果有这个域名,就与其映射的IP地址建立链接,解析完成
第三步,本地域名服务器
如果操作系统缓存中没有找到,则检查本地域名服务器的缓存,如果有这个域名,就与其映射的IP建立链接,解析完成
第四步,根域名服务器
如果本地域名服务器缓存中没有找到,则请求根服务器,根服务器会返回一个负责该区域的主服务器的IP
根服务器用来管理互联网的主目录,不存储域名,而是存储负责每个域的解析的域名服务器的地址信息,互联网上所有将域名转化为IP地址的请求,理论上都要经过根服务器
第五步,递归请求主域名服务器
本地域名服务器根据根域名服务器返回的IP地址,链接这个主域名服务器,主域名服务器如果有这个域名,就与其映射的IP建立链接,解析完成
如果没有这个域名,则递归请求下一级域名服务器,直到找到对应的域名
第六步,缓存并建立链接
主域名服务器将查询到的IP地址返回给本地域名服务器,本地域名服务器缓存域名及其映射的IP , 并通过IP地址与web服务器建立链接,展示网站内容,解析完成
HTTPS的通信步骤
①客户端发送报文给服务器开始进行SSL通信。报文中包含客户端支持的SSL指定版本、客户端生成的随机数、加密组件(加密算法以及密钥长度)。
②服务器发送响应报文给客户端。和客户端一样,报文中包含SSL版本、服务器生成的随机数、加密组件(从接收到的客户端加密组件内筛选出来的)。
③服务器把公钥证书发送给客户端,自己保存着私钥。 服务器把自己的公钥登陆至数字证书认证机构,数字证书认证机构用自己的私钥向服务器的公钥署数字签名并颁发公钥证书。
④服务器发送报文告知客户端最初阶段的SSL握手协商部分结束。
⑤客户端用服务器的公钥对生成的随机数加密后发送给服务器。客户端拿到服务器的公钥证书后,使用数字证书认证机构的公钥向数字证书认证机构验证公钥证书的数字签名,以确认服务器的公钥的真实性,然后生成一个新的随机数,用公钥加密这个随机数发送给服务器。
⑥服务器用私钥解密后获得客户端发来的随机数。
⑦客户端和服务器根据约定的加密方法,使用前面三个随机数生成对话密钥,用来加密接下来的通信过程。
状态码
301:请求的网页已永久移动到新位置。
302:服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来响应以后的请求。
304:自从上次请求后,请求的网页未修改过。服务器返回此响应时,不会返回网页内容。
307:服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来响应以后的请求。
400:服务器不理解请求的语法。
401:请求要求身份验证。对于登录后请求的网页,服务器可能返回此响应。
403:服务器拒绝请求。
404:服务器找不到请求的网页。
500:服务器遇到错误,无法完成请求。
501:服务器不具备完成请求的功能。
503:服务器目前无法使用(由于超载或停机维护),通常,这只是暂时状态。