Azure部署API服务运行报错:无法配置HTTPS端点未找到默认开发者证书
我将API service application发布到了Azure cloud,进入Azure API服务控制台尝试运行服务时遇到如下报错:
Unable to configure HTTPS endpoint. No server certificate was specified, and the default developer certificate could not be found
我已参考相关帖文中的所有可行解决方案尝试操作,包括删除证书、运行dotnet命令等所有给出的方案都已尝试,但仍然出现该错误,目前问题无法推进,恳请各位协助提供解决办法。
解决方案
你之前尝试的都是本地开发环境的修复方案,发布到Azure云后需要按照云服务的配置逻辑调整:
- 检查Azure服务的TLS证书配置
登录Azure门户进入对应API服务实例,打开「TLS/SSL设置」页面,切换到「私钥证书(.pfx)」标签:- 若使用自定义域名,请上传有效的CA签发证书,或直接申请Azure免费托管证书完成绑定
- 若使用Azure默认的
*.azurewebsites.net域名,无需自行上传证书,确认域名解析正常即可
- 修正.NET项目的启动配置
检查Program.cs/Startup.cs文件,不要在生产环境强制加载本地开发证书,添加环境判断逻辑:
发布前确认发布配置的环境变量为// 仅开发环境加载本地开发证书 if (builder.Environment.IsDevelopment()) { builder.WebHost.UseKestrel(opt => { opt.ListenAnyIP(5001, o => o.UseHttps()); }); }Production,避免程序误进入开发环境逻辑尝试读取不存在的本地证书 - 覆盖应用服务的默认端口配置
进入API服务的「配置」-「应用程序设置」,新增两个配置项后重启实例:- 键:
ASPNETCORE_URLS,值:http://0.0.0.0:80;https://0.0.0.0:443 - 键:
ASPNETCORE_HTTPS_PORT,值:443
- 键:
- 若使用Azure API Management托管API,额外检查后端配置
进入APIM实例对应的API后端设置页,若后端服务使用自签名证书,需要将根证书上传到APIM的证书列表,开启后端证书验证开关。
内容的提问来源于stack exchange,提问作者Arie
相关产品推荐
相关产品推荐

