浏览器输入URL后到底发生了什么?
一、检查你输入的内容
首先浏览器会检查输入的内容符不符合URL的格式,符合就是URL。例如在谷歌浏览器地址栏输入"baidu.com",则是正常的URL,并自动补全为"https://www.baidu.com";
不符合的话浏览器就会认为该内容是用户想要搜索的关键字,所以就会按照浏览器自己的规则去拼接出一条URL搜索关键字对应的信息。
例如在谷歌浏览器地址栏输入"百度",URL拼接如下:
https://www.google.com/search?q=%E7%99%BE%E5%BA%A6&oq=%E7%99%BE%E5%BA%A6&aqs=chrome..69i57j69i59j0l5j69i61.9584j0j9&sourceid=chrome&ie=UTF-8
总之经过处理最后都是URL。
二、 域名解析
我们向浏览器输入URL,其实就是想要想某个服务器去请求对应的资源,例如页面、文件等;所有的网络通讯都是基于IP地址的(假如了解Socket编程的话,应该知道无论是TCP还是UDP都是需要IP地址作为参数的,而HTTP是基于TCP的,所以自然需要获取到IP地址才能进行网络通讯),而我们输入的URL的格式是:"协议://域名/资源名"这样的格式,很明显没有服务器的IP地址,所以