所有ASP.NET Core应用调试时抛出ERR_CONNECTION_RESET错误求助
解决ASP.NET Core Web API在Visual Studio 2022调试时的ERR_CONNECTION_RESET错误
1. 重置IIS Express SSL配置
以管理员身份打开命令提示符,执行命令彻底重置IIS Express的SSL绑定:
"%ProgramFiles(x86)%\IIS Express\IisExpressAdminCmd.exe" resetSsl
这个操作会清除旧的SSL配置,让IIS Express重新生成干净的localhost证书关联。
2. 手动绑定SSL证书到指定端口
- 打开项目根目录下的
launchSettings.json,找到iisSettings节点下的sslPort,修改为一个未被占用的端口(比如44302),同时确保sslUrl的端口和这个值一致。 - 打开证书管理器(运行
certmgr.msc),在“个人>证书”里找到IIS Express的localhost证书,查看详细信息,复制指纹(注意去掉指纹里的空格)。 - 以管理员身份打开PowerShell,执行以下命令(替换
YOUR_PORT为你设置的端口,CERT_THUMBPRINT为复制的指纹,APP_GUID可以生成一个新的GUID,比如{98765432-1234-5678-90AB-CDEF12345678}):
netsh http delete sslcert ipport=0.0.0.0:YOUR_PORT netsh http add sslcert ipport=0.0.0.0:YOUR_PORT certhash=CERT_THUMBPRINT appid={APP_GUID}
3. 切换调试运行模式排查根源
打开项目属性的“调试”选项卡,把调试模式从“IIS Express”改成“项目”(直接用Kestrel运行),启动调试。如果Kestrel能正常访问,说明问题出在IIS Express的配置上;如果还是报错,再检查项目的SSL代码配置(比如Program.cs里的HTTPS重定向设置)。
4. 清理Visual Studio缓存
关闭VS2022,删除以下目录的缓存文件:
%USERPROFILE%\AppData\Local\Microsoft\VisualStudio\17.0_*(17.0对应VS2022版本,后面的后缀可能不同)%USERPROFILE%\AppData\Roaming\Microsoft\VisualStudio\17.0_*
重启VS后重新加载项目调试。
5. 检查防火墙拦截
临时关闭Windows防火墙,启动调试测试。如果连接正常,说明防火墙拦截了SSL端口,需要添加入站规则:允许HTTPS(443开头的端口,或者你自定义的端口)通过防火墙。
内容的提问来源于stack exchange,提问作者ksardas2008
相关产品推荐
相关产品推荐

