您现在的位置是:知识 >>正文

IP访问网站访问的是网站的url

知识3114人已围观

简介```html IP访问网站访问的是网站的URL IP访问网站访问的是网站的URL 打开浏览器,地址栏里敲进一个IP地址——比如110.242.68.66——回车。页面出来了,百度首页。这 ...

```html IP访问网站访问的访问访问是网站的URL

IP访问网站访问的是网站的URL

打开浏览器,地址栏里敲进一个IP地址——比如110.242.68.66——回车。网站页面出来了,访问访问百度首页。网站这时候你可能觉得:我访问的访问访问就是这个IP嘛。但仔细看地址栏,网站它已经悄悄变成了https://www.baidu.com。访问访问这个细节暴露了一件事:你用IP访问,网站最终到达的访问访问其实是网站的URL。

HTTP协议的网站工作方式决定了这一点。浏览器发出请求时,访问访问请求头里有一个字段叫Host。网站哪怕你在地址栏只写了IP,访问访问浏览器也会自动把IP填进Host字段。网站服务器收到请求,访问访问看到Host: 110.242.68.66,它得判断:这个IP对应的是哪个网站?一台服务器上可能跑着几十个站点,IP是同一个,靠什么区分?靠Host里的域名。如果Host里只有IP没有域名,服务器大概率返回一个默认站点,或者直接报错。

我拿自己的服务器做过实验。一台腾讯云轻量服务器,绑了三个域名:blog.example.com、api.example.com、www.example.com。用IP直接访问,Nginx返回的是blog.example.com的内容——因为我把那个站点设成了default_server。换一台服务器,默认站点不同,IP访问看到的东西就完全不一样。这说明IP本身不携带“你要访问哪个网站”的信息,它只是网络层的寻址坐标。

那为什么有时候用IP也能打开想要的网站?因为服务器配置了默认站点,或者那个IP只对应一个网站。早期互联网确实如此,一个IP一个网站,输入IP就等于访问了那个URL。现在不同了,共享IP是常态。虚拟主机、CDN、云负载均衡,都在同一个IP后面塞了无数个域名。你输入IP,服务器不知道你要哪个,只能给你一个默认的,或者干脆拒绝。

还有一个更隐蔽的层面:HTTPS。用IP访问HTTPS网站,浏览器会报证书错误。证书是绑定域名的,www.baidu.com的证书不认110.242.68.66。你强行继续,请求里的Host还是IP,服务器依然无法匹配到正确的站点配置。所以现代网站几乎不会让你用IP访问成功,要么跳转到域名,要么直接阻断。

URL里的域名部分,本质上是给服务器看的“门牌号”。IP是“街道地址”,域名是“单元楼+房间号”。你告诉快递员街道地址,他到了楼下,但不知道送哪一户。URL里的域名就是那户的门牌。浏览器帮你把IP和域名拼在一起发出去,服务器才能准确投递。

我见过有人把/etc/hosts文件改掉,把example.com指向一个IP,然后浏览器访问example.com,请求头里Host就是example.com,服务器正常响应。如果直接访问那个IP,Host变成IP,服务器就懵了。这个对比很直观:决定你访问哪个网站的,不是IP,是Host字段里的那个URL。

所以“IP访问网站”这个说法本身就不准确。IP只是到达服务器的路径,URL才是告诉服务器“我要哪个网站”的钥匙。你输入IP,浏览器和服务器在背后悄悄把URL补上或者替换掉,你看到的最终页面,仍然是某个URL对应的内容。下次再想用IP访问,不妨打开开发者工具,看看请求头里的Host到底写了什么。

```

Tags:

相关文章

  • 滁州市江山书记死亡

    知识

    2023年4月28日傍晚,滁州市来安县新安镇的一条乡间小路上,一辆黑色轿车撞上路边杨树。车内坐的是来安县委书记——江山。车头凹陷,安全气囊弹出,人被卡在驾驶座上。等消防破拆完,人已经没了气息,终年56 ...

    【知识】

    阅读更多
  • 贷款刷流水犯法吗

    知识

    贷款刷流水,这事儿听着像是银行内部操作,其实离刑事犯罪只有一步之遥。 去年有个做小生意的朋友老周,因为征信有逾期记录,正规银行贷不到款。他在网上找了个“贷款中介”,对方拍胸脯保证:“资质不行没关系,我 ...

    【知识】

    阅读更多
  • 柳州建设工程检测中介机构

    知识

    柳州柳北区某工地的桩基检测报告上,监理老周用红笔圈了个数字,说这组沉降数据跟隔壁地块的同类工程对不上。检测公司的人连夜复测,最后发现是基准点被施工车辆碰歪了。这类事在柳州每天都有——检测中介机构不是实 ...

    【知识】

    阅读更多


友情链接