Http协议相关 Http Header等

 

我在服务器配置了个 /etc/hosts 域名映射,如下 192.168.1.10 a.test.com
有个问题,在客户端,请求http://a.test.com/query接口,和http://192.168.1.10/query接口。这2个请求有什么区别?对于接口的服务端,能感知到客户端使用哪种请求的吗?

在你描述的情况下,配置了 /etc/hosts 文件来映射域名 a.test.com 到 IP 地址 192.168.1.10。这样做的目的是让你可以使用域名访问服务器,而不必直接使用 IP 地址。对于你的问题:

区别:
当你使用 http://a.test.com/query 发起请求时,实际上是发送到了 192.168.1.10 这台服务器,只是通过域名映射让你可以使用友好的域名来访问。
当你使用 http://192.168.1.10/query 发起请求时,直接使用了服务器的 IP 地址。

服务端感知:
从服务端的角度来看,两种请求(域名请求和直接IP请求)在大多数情况下是没有区别的。HTTP 请求中会包含一个 Host 头部字段,该字段指示了客户端请求的目标域名。服务端可以通过检查这个头部字段来知道客户端访问的是哪个域名。
在绝大多数情况下,服务端不会感知到客户端使用了哪种请求方式,因为 HTTP 请求本身不会明确地包含“使用域名”或“使用IP地址”的信息。服务端只是解析请求中的数据,提供相应的响应。

例子

本地启动了一个服务端,监听8000端口

当使用http://127.0.0.1:8000/请求,服务端获取到如下

复制代码
Request URL: /
Request Headers:
Host: 127.0.0.1:8000
Connection: keep-alive
Cache-Control: max-age=0
sec-ch-ua: "Chromium";v="116", "Not)A;Brand";v="24", "Google Chrome";v="116"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Windows"
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Sec-Fetch-Site: none
Sec-Fetch-Mode: navigate
Sec-Fetch-User: ?1
Sec-Fetch-Dest: document
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
复制代码

当使用http://a.test.com:8000/请求,服务端获取到如下

复制代码
Request URL: /
Request Headers:
Host: a.test.com:8000
Connection: keep-alive
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.9
复制代码

 

posted @   szcj~  阅读(8)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示