URL
URL统一资源定位符,用于互联网上不同的资源的标识,就像不同的人有不同的身份证一样。
URL组成
- 协议
- 域名 (有时候也是ip,)
- 端口号(数字表示,若为HTTP的默认值“:80”可省略)
- 路径(以“/”字符区别路径中的每一个目录名称)
- 查询(GET模式的窗体参数,以“?”字符为起点,每个参数以“&”隔开,再以“=”分开参数名称与数据,通常以UTF8的URL编码,避开字符冲突的问题)
在浏览器输入url后的访问
1、域名解析
- 当我们输出url,然后回车时,我们需要找到此URL的ip地址,我们会先到本地缓存中去寻找对应ip,如果没有,就向上级域名服务器查找,一般分为递归查询和迭代查询
- 查询到ip地址后,我们通过TCP三次握手过程建立连接
- 然后向服务器发送请求
2. 服务器接收到请求和返回数据
服务器接到url的请求后,会跳转到此url的处理函数(我用python写后台是这样,其他语言有没有不同的我不清楚),此处理函数可以根据发送过来的信息返回相应的界面或数据。
3. 浏览器的接受数据和页面渲染
浏览器收到html文件和相应数据,开始解析,然后根据浏览器的渲染机制进行渲染,具体过程我不太清楚就不多说了。