IIS服务器返回Bad Request(Invalid Hostname)解决方法

    很多人在配置好IIS服务器之后,打开自己的网站返回的确是Bad Request错误。导致这一错误的主要原因是域名已经解析,但是无法找到域名对应的主机。

    在设置网站标识时,通常将服务器IP设置为“全部未分配”(如下图所示),这时即可保证解析到服务器绑定的任何IP都可以访问到WEB服务。这合适在多网卡服务器时配置,一般都是一个IP,或者即使是多网卡,也需要指定到确切的IP,方便管理和后期维护。

    主机名推荐设置为空,如果主机名设置格式错误同意易导致访问不到想要的网站。

    此外,防火墙也很容易拦截外部设备访问我们服务器的请求,因此推荐在发布网站前,将自己的windows防火墙关闭。防火墙的入口也可以从控制面板中找到。

    如果觉得关闭防火墙太过不安全,可以使用下面这种方法:在防火墙中选中高级设置;

    选中左侧入站规则,然后点击右侧的新建规则按钮;

    在新建规则界面中,选择创建端口类型的规则,并点击下一步;

     接下来可以选择特定的端口号,选择的端口号一般都要大于80,80号端口为浏览器默认的访问端口。

     接下来选择连接符合条件时的操作,选择允许连接;

     应用规则按照下图勾选,一般这些都是电脑默认的选项;

     最后填写一下名称和描述即可完成入站规则。

     创建该入站规则的作用是让防火墙有选择地过滤掉来自外部的访问,并同时让我们本地的网站能够被访问到。但是入站规则起作用的前提是防火墙得处于开启状态,如果防火墙没开,服务器也没安装其他防护软件,通常不会出现因为拦截而访问不了站点的问题。