You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET本地IIS Express应用移动端访问提示‘Invalid Hostname’400错误求助

IIS Express访问出现400 Invalid Hostname的问题解决

问题原因

IIS Express默认只绑定localhost和回环地址127.0.0.1,它会严格校验请求的主机头是否在允许列表内。当你用电脑的局域网IP(比如192.168.x.x)从手机访问时,请求的主机头是这个局域网IP,不在IIS Express的允许名单里,所以就抛出了Invalid Hostname错误。

解决办法

方法1:修改IIS Express配置文件

  1. 找到applicationhost.config文件,常见路径有两个:
    • 全局配置:%USERPROFILE%\Documents\IISExpress\config\applicationhost.config
    • 项目专属配置:项目根目录下的.vs\config\applicationhost.config(如果存在)
  2. 打开文件,定位到你项目对应的<site>节点下的<bindings>部分,默认是这样:
    <bindings>
        <binding protocol="http" bindingInformation="*:44329:localhost" />
    </bindings>
    
  3. 添加新的绑定规则:
    • 绑定指定局域网IP(把192.168.1.100换成你电脑的实际IPv4地址):
      <bindings>
          <binding protocol="http" bindingInformation="*:44329:localhost" />
          <binding protocol="http" bindingInformation="*:44329:192.168.1.100" />
      </bindings>
      
    • 或者允许所有主机(同一WiFi环境下可用,非信任网络不推荐):
      <binding protocol="http" bindingInformation="*:44329:*" />
      
  4. 保存文件,重启Visual Studio和IIS Express,之后手机用http://你的局域网IP:44329访问即可。

方法2:命令行启动IIS Express并绑定IP

  1. 打开CMD,切换到IIS Express安装目录:
    cd "C:\Program Files\IIS Express"
    
  2. 执行启动命令,替换YourProjectRootPath为你的项目根目录路径,192.168.1.100为电脑局域网IP:
    iisexpress.exe /path:YourProjectRootPath /port:44329 /clr:v4.0 /binding:http://192.168.1.100:44329/
    
  3. 启动完成后,手机直接访问http://192.168.1.100:44329就行。

额外提醒

  • 先用ipconfig命令确认电脑的局域网IPv4地址,确保手机和电脑在同一WiFi下。
  • 如果是HTTPS站点,还需要配置SSL证书绑定并让手机信任该证书,不过你的场景里没提HTTPS,暂时不用管。

内容的提问来源于stack exchange,提问作者Sebastiaan Hoedeman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 19:58:29