结论:
1、首先请求DNS解析域名、解析为ip地址;
2、根据这个地址找到互联网上对应的服务器,向这个服务器发起一个请求,3、由服务器决定返回默认的数据资源给访问的用户;
4、浏览器根据数据渲染页面;
DNS域名解析过程
1、当用户在浏览器中输入域名并按回车键时,浏览器会检查缓存中该域名是否为对应解析的IP地址,如果缓存中有,解析过程将结束。
浏览器缓存大小有限制,而且也有时间限制,通常是几分钟到几个小时,这个时间限制是由域名的TTL属性来设置的。
2、如果用户的浏览器缓存没有,浏览器将缓存查找操作系统缓存是否有DNS域结果。其实操作系统也可以有一个域名解析的过程,在Windows中可以用C: Windows/System32/drivers/etc/hosts文件来设置,在Linux中是etc/hosts文件,可以取任意DNS到任意IP地址进行访问。如果这里的IP地址对应指定了域名,浏览器会先使用该IP地址。
例如,当我们在测试时可以将DNS发送到一个测试服务器,这样不需要更改任何代码就可以测试将业务逻辑代码发送到一个单独的服务器是否正确。因为本地的DNS纪律,所以黑客可以通过修改你的DNS来指定特定的DNS的IP地址吧,导致域名被劫持。因而通常情况下这个文件是只读的。
3、当浏览器缓存和操作系统上都没有时,进行域名服务器上的域名请求,DNS会在各个域名服务器上逐层向上查找,直到找到域名。域名服务器又分为:
1)、主域名服务器
负责维护一个区域的所有域名信息,是特定的所有信息的权威信息源,数据可以修改。
2)、辅助域名服务器