首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

【Linux】应用层协议:HTTP和HTTPS

1. 在之前的文章中我们实现了一个网络版本的计算器,在那个计算器中揉合了协议定制以及序列化反序列化的内容,我们当时也自己定制了一套协议标准,比如请求和响应的格式应该是什么?如何读到一个完整的报文?支持的运算符有什么?等等我们都有自己的标准。 那么有没有其他大佬针对应用层的某些使用场景,已经提前给我们写好了协议软件呢?有,这个协议就是http协议,我们当时的协议仅仅是针对计算场景所设计的,而http协议主要是针对web场景所设计的。 虽然到现在我们还没真正的接触http协议的具体内容,但我们现在已经可以知道,http中一定有网络套接字编程,序列化反序列化,以及http要进行的自己的业务逻辑,而这三个方面实际和我们当时的计算器相同,都是分别对应OSI上三层模型,分别是会话,表示,应用,http的业务逻辑一般主要是电子邮件的发送,远程登陆,文件传输等……

03

HTTP基础知识知多少

1.《图解HTTP》; 2.<一个http请求的详细过程> http://www.cnblogs.com/yuteng/articles/1904215.html 3.<想不通HTTPS如何校验证书合法性来看> http://blog.csdn.net/jogger_ling/article/details/60576625 4.<数字证书及CA的扫盲介绍> http://kb.cnblogs.com/page/194742/ 5.<从HTTP切换到HTTPS的完整指南> http://www.gbtags.com/gb/mobileshare/10816.htm 6.<HTTP,HTTP2.0,SPDY,HTTPS你应该知道的一些事> http://web.jobbole.com/87695/ 7.<聊聊HTTPS和SSL/TLS协议>http://www.techug.com/post/https-ssl-tls.html 8.<浏览器缓存机制> http://www.cnblogs.com/skynet/archive/2012/11/28/2792503.html 9.<扫盲文件完整性校验——关于散列值和数字签名> http://jmchxy.blog.163.com/blog/static/746082322013121113818518/ 10.<DNS & CDN & HTTPDNS 原理简析> http://www.jianshu.com/p/a73e963b63b1 11.<HTTPS那些事(二)SSL证书>http://www.guokr.com/post/116169/ 12.<浅析 OkHttp 的 TLS 连接过程>http://www.jianshu.com/p/f7972c30fc52 13.<HTTP2 概述>http://www.cnblogs.com/ghj1976/p/4552583.html 14.<图解SSL/TLS协议>http://www.ruanyifeng.com/blog/2014/09/illustration-ssl.html

03

HTTP使用BASIC认证的原理及实现方法

在HTTP协议进行通信的过程中,HTTP协议定义了基本认证过程以允许HTTP服务器对WEB浏览器进行用户身份证的方法,当一个客户端向HTTP服务 器进行数据请求时,如果客户端未被认证,则HTTP服务器将通过基本认证过程对客户端的用户名及密码进行验证,以决定用户是否合法。客户端在接收到HTTP服务器的身份认证要求后,会提示用户输入用户名及密码,然后将用户名及密码以BASE64加密,加密后的密文将附加于请求信息中, 如当用户名为anjuta,密码为:123456时,客户端将用户名和密码用“:”合并,并将合并后的字符串用BASE64加密为密文,并于每次请求数据时,将密文附加于请求头(Request Header)中。HTTP服务器在每次收到请求包后,根据协议取得客户端附加的用户信息(BASE64加密的用户名和密码),解开请求包,对用户名及密码进行验证,如果用 户名及密码正确,则根据客户端请求,返回客户端所需要的数据;否则,返回错误代码或重新要求客户端提供用户名及密码。

03

浏览器页面呈现过程

首先浏览器将输入的链接进行DNS解析,也就是将域名转换为IP地址的过程,得到了服务器具体的IP地址,才可以进行TCP链接以及数据的传输。 具体DNS解析的过程,浏览器首先检查自身的DNS缓存是否对于此域名有IP地址,chrome对于域名解析的缓存时间为60s,可以通过地址栏输入chrome://net-internals/#dns清除DNS缓存。若浏览器解析缓存未命中,则到操作系统中hosts文件检查域名与IP对应关系。若hosts文件未命中,则向本地域名服务器请求解析,本地域名服务器一般是运营商ISP提供的,一般是通过53端口发送UDP报文请求服务器解析DNS。若本地服务器解析未命中则会有两种解析方案:迭代解析与递归解析,一般来说,主机向本地域名服务器的查询一般都是采用递归查询,本地域名服务器向根域名服务器的查询通常是采用迭代查询,依次向根域名服务器、顶级域名服务器、主域名服务器等一级一级查询查询直到查询到IP地址。

02
领券