HTTP Error 400. The request hostname is invalid.

异常信息

shell 复制代码
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd">
<HTML><HEAD><TITLE>Bad Request</TITLE>
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=us-ascii"></HEAD>
<BODY><h2>Bad Request - Invalid Hostname</h2>
<hr><p>HTTP Error 400. The request hostname is invalid.</p>
</BODY></HTML>

原因

服务器因为历史原因使用的是 IIS部署的,IIS配置要求一个有效的主机名(Host header),而不是直接使用IP地址进行访问。这个配置可以通过IIS管理器中的"绑定"来设置。在IIS中,每个网站可以配置一个或多个绑定,这些绑定指明了网站可以响应的IP地址、端口和(可选的)主机名。如果网站配置为仅响应特定的主机名,而请求没有提供该主机名或提供了错误的主机名,IIS就会返回400错误。

解决方案

  1. 要使用IIS绑定的主机名进行请求,可以使用curl 进行测试(指定一个自定义的请求头,配置Host的值为指定要请求的主机名)
shell 复制代码
# `example.com` 应该替换成绑定的主机名
curl -H "Host: example.com" http://<IP-address>
  1. 修改IIS绑定 :如果你有权限访问IIS服务器配置,你可以添加一个新的绑定来允许直接使用IP地址访问,或者去掉绑定的主机名采用为空即解决问题。
相关推荐
bdzbongbang13 分钟前
剖析发电机中性点接地电阻柜的构成
网络·经验分享
✧˖‹gσσ∂ иιghт›✧30 分钟前
esp32 s3 修改本地ip和服务器IP
服务器·网络协议·tcp/ip
Ares-Wang30 分钟前
网络》》防火墙
运维·服务器·网络
可爱又迷人的反派角色“yang”32 分钟前
k8s(四)
linux·网络·云原生·容器·kubernetes·云计算
qq_4112624232 分钟前
优化wifi的性能,LWIP_TCP_WND是不是指的是DYNAMIC_RX_BUFFER动态接受缓冲区的缓冲区大小
网络·网络协议·tcp/ip
funnycoffee12336 分钟前
华为路由器或3层设备接口下的arp broadcast enable作用是啥?
网络·华为
阿杰 AJie43 分钟前
如何将公司公网ip绑定到服务器和域名
服务器·网络·tcp/ip
sublime881 小时前
JNPF快速开发平台存在任意文件读取漏洞 附PO
网络·安全·web安全·网络安全
山有木兮啊1 小时前
MSS Clamping (MSS Adjustment)
网络
计算机小手1 小时前
内网穿透系列十六:使用 wg-easy 快速搭建基于 wireguard 的虚拟局域网,支持Docker部署
经验分享·网络协议·docker·开源软件