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

IIS部署网站无法访问:DNS及HTTP 502.5故障排查记录

解决IIS部署.NET网站遇到的DNS_PROBE_FINISHED_NXDOMAIN和HTTP 502.5错误

最近我在服务器上部署.NET网站时接连踩了两个坑,折腾了好一会儿才搞定,分享下我的排查和解决过程:

遇到的问题

  1. 安装完.NET Hosting Bundle、用IIS创建网站后,通过外部URL访问时,Chrome直接弹出DNS_PROBE_FINISHED_NXDOMAIN错误,根本连不上服务器。
  2. 为了先测试本地访问,我给网站加了localhost:443的绑定,结果服务器本地访问时又出现HTTP 502.5错误,查看IIS日志发现请求明明已经被接收,但就是返回错误。

排查与解决过程

先处理DNS解析问题

DNS_PROBE_FINISHED_NXDOMAIN本质是域名解析失败,说明外部访问时域名没有正确指向服务器的公网IP。我当时先跳过外部访问,专注解决本地502.5的问题,后续再去调整域名的A记录解析。

启用.NET Core stdout日志定位502.5错误

IIS日志只显示请求被接收,但看不到.NET应用内部的错误信息,这时候就得启用.NET Core的标准输出日志:

  1. 找到网站根目录下的web.config文件,编辑其中的<aspNetCore>节点:
<aspNetCore processPath="dotnet" arguments=".\YourApplication.dll" 
            stdoutLogEnabled="true" 
            stdoutLogFile=".\logs\stdout" 
            hostingModel="inprocess" />
  • 关键是把stdoutLogEnabled从false改成true,同时指定日志输出路径.\logs\stdout
  • 注意:如果网站根目录下没有logs文件夹,要手动创建,并且给IIS进程(一般是IIS_IUSRS用户)分配读写权限,不然日志写不进去。
  1. 重启IIS网站后,再次访问触发502.5错误,然后去.\logs目录下查看生成的日志文件。日志里会详细记录.NET应用启动失败的具体原因——可能是缺失某个依赖包、appsettings配置错误、端口被占用,甚至是.NET Runtime版本不匹配。
  2. 根据日志提示修复问题后,网站就能正常访问了。

总结

  • DNS_PROBE_FINISHED_NXDOMAIN:优先检查域名解析配置,确保域名的A记录指向服务器公网IP,本地测试也可以修改hosts文件临时绑定域名和IP。
  • HTTP 502.5:这是.NET Core应用启动失败的典型标志,只看IIS日志找不到根本原因,启用stdout日志是最直接有效的排查手段。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.06 13:19:05