浏览器访问域名,到底发生了什么?
2021-05-29 17:56:32 1 举报
浏览器访问域名,到底发生了什么?
作者其他创作
大纲/内容
查询到ip
浏览器
根域名服务器
域名所有者
通过代理转发到后端服务
回到浏览器
dns服务商
先查询系统自身的hostswindows:C:\\Windows\\System32\\drivers\\etc\\hostslinux:/etc/hosts
server { listen 81; server_name xxx.com; location /html { root html; index index.html index.htm; } location / { proxy_pass http://127.0.0.1:8081; }}
服务商自身提供一个dns查询服务器
软件层面
打开
后端服务监听8081
封装出http协议,包含:host,port,path,请求方法(get/post)等等
设置域名*,@,cname等等
附带:当前域名自身的dns服务器一般的注册信息
可以扩充的知识点:https
用户
解析html或者js解析json生成html
调用系统方法
可以扩充的知识点: jvm,netty,mysql,redis等等
某一个域名注册商
域名购买
拿到ip
返回数据
再查询系统设置的dns服务器默认路由器的ip也可以自定义设置:(常用的)114.114.114.1148.8.8.8
路由器上设置的dns服务器114.114.114.1148.8.8.8或者是宽带服务商的dns服务器
根据域名查询当前域名所在的dns服务器
nginx解析http request,从配置的server节点找:host(server_name)port(listen)path(location)
向根域名服务器注册当前域名
向根域名服务器注册自已的dns服务器域名和ip
可以扩充的知识点:dom,v8,nodejs,js
查询
nginx如何找到对应的前后端服务?
数据来源
注册商dns服务器根据具体二级/一级域名查询设置的ip地址
具体服务
去购买
tcp/ip
建立tcp连接
浏览器chrome
将连接发送给nginx
根域名服务器查询当前域名设置的注册商dns服务器
最终到达
访问
gethostbyname(xxx.com)
nginx
可以扩充的知识点:http协议,tcp
保存到域名服务商的数据库中
呈现给用户
系统层面
http://xxx.com:81
域名对应的dns怎么来的?
域名所在服务器根据http协议里的端口找到nginx监听了该端口
得到服务器返回的数据后
收藏
0 条评论
下一页