Asp.Net Core 项目部署Centos中,httpClient 请求Https报证书错误的系列问题

  • Asp.Net Core 项目部署Centos中,httpClient 请求Https报证书错误的系列问题已关闭评论
  • 204 次浏览
  • A+
所属分类:.NET技术
摘要

参考自 https://www.cnblogs.com/leoxjy/p/10201046.html#5095270Centos报这个问题,Asp.NetCore 3.1

参考自 https://www.cnblogs.com/leoxjy/p/10201046.html#5095270

Centos报这个问题,Asp.NetCore 3.1

HttpClient 请求 Https 报错的SSL证书异常的问题,请使用以下方法解决。

export DOTNET_SYSTEM_NET_HTTP_USESOCKETSHTTPHANDLER=0; # 可不运行以下语句 dotnet build 

由于赶时间在进入ssh终端后直接运行以下语句,发现Configuration读取配置项一直是未空。

IConfiguration对象已经被注入到Ioc容器中。

dotnet xxx.dll 

经过研究后发现,必须要先进入Dll的工作目录运行Dll才有效。
经过研究后发现,必须要先进入Dll的工作目录运行Dll才有效。
经过研究后发现,必须要先进入Dll的工作目录运行Dll才有效。

工作目录:存放Dll运行程序的目录

假设 app.dll 存放于 /home/www/app.dll

# 正确示例 # 这个时候,Configuration配置文件才被读取到 cd /home/www  dotnet app.dll            #正确,appSetting.json配置信息可读取 dotnet /home/www/app.dll  #正确,appSetting.json配置信息可读取  # 错误示例 假设当前目录为 /home  cd /home  dotnet app.dll # 错误, /home/app.dll 不存在。应该是 /home/www/app.dll  dotnet /home/www/app.dll # 程序可运行,但是appSetting.json配置信息读取不到。 

使用服务形式启动Asp.Net Core站点,出现异常

如果运行过export DOTNET_SYSTEM_NET_HTTP_USESOCKETSHTTPHANDLER=0;,请不要使用sudo来启动服务

# 错误示例 sudo systemctl start app.service #异常,报HttpClient请求Https时候SSL证书错误。 # 正确示例 systemctl start app.service # 正常,程序正常启动。HttpClient请求Https成功。 

The End。