asp.net core 部署 提示DataProtectionServices 错误

今天在部署asp.net core网站时,因为调用到阿里云的api,api的参数需要加密签名,系统报出了如下错误:

warn: Microsoft.Extensions.DependencyInjection.DataProtectionServices[59]
Neither user profile nor HKLM registry available. Using an ephemeral key repository. Protected data will be unavailable when application exits.
warn: Microsoft.AspNetCore.DataProtection.Repositories.EphemeralXmlRepository[50]
Using an in-memory repository. Keys will not be persisted to storage.
fail: Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware[0]

上网搜了下应该是某些安全机制引起的吧。

具体请自行查看一下文章:Asp.net core Data Protection : https://docs.asp.net/en/latest/hosting/dataprotection.html

            github: https://github.com/aspnet/DataProtection/issues/102

反正我是大致看了下这两篇文章后找到解决方案的,但是详细原因嘛,英文还不过关。

使用 PowerShell执行第一篇文章提供的脚本。注意,Powershell 有可能会提示“此系统中禁止执行脚本”,那么按照提示先执行“set-executionpolicy remotesigned”命令。

执行脚本会提示输入Application Pool名字,输入你网站对应的应用程序池就可以了。如果有多个网站对应多个Application Pool ,那么要分别注册。

执行后可能会出现以下错误:

没关系,注册是已经成功的。反正我的网站在这之后就能正确访问了。

时间: 2024-10-27 11:28:12

asp.net core 部署 提示DataProtectionServices 错误的相关文章

又一篇Centos7下的asp.net core部署教程

原文:又一篇Centos7下的asp.net core部署教程 历程2个多月的学习,我终于从PHP转.Net开发了. 虽然网上已经有很多关于asp.net core在linux下的部署教程了,但我还是想写一篇,主要增强我自己的记忆. 搭建的环境为Centos7 + .net core  + nginx + mysql5.7,我的网站是asp.net core后端,vue前端,数据据mysql: 第一次搭建时遇到不少的坑,我会在下面也说到 前提,你有一台可以联网,有root账号密码,有开通ssh的

你真的了解ASP.NET Core 部署模型吗?

原文:你真的了解ASP.NET Core 部署模型吗? ----------------------------   以下内容针对 ASP.NET Core2.1,2.2出现IIS进程内寄宿 暂不展开讨论-------------------------- 相比ASP.NET,ASP.NET Core 2.1出现了3个新的组件:ASP.NET Core Module.Kestrel.dotnet.exe, 后面我们会理清楚这三个组件的作用和组件之间的交互原理. ASP.NET Core 设计的初

ASP.net Core部署说明(Ubuntu) [转]

最近在学习asp.net core,当然学习的目的是想了解一下,Asp.net core是否真的能够是先跨平台部署. 根据目前官网资料说明,asp.net core只有在Redhat 企业版上,才能够实现所有的功能.不过这个版本是收费的,可能不是大多数人的最佳选择. 笔者目前选择的实验环境是Ubuntu 16.4 和CentOS7这两个平台. 从长远角度来说,CentOS7维护周期长,更加适合企业生产环境.Ubuntu择以更加活跃的社区,更加快速的更新受到欢迎,不过他的维护周期一般只有2~3年,

asp.net core部署到iis

asp.net core项目部署到IIS稍微不同于之前,记录几个要点: 一.下载安装AspNetCoreModule模块,它包含在.NET Core Windows Server Hosting bundle里面,这个链接或许不是最新的了,官方文档里面有这个链接,到下图所示位置即可找到. 安装完之后,会发现多了个模块: 然后重启iis.如果还是出现以下错误: HTTP Error 502.5 - Process Failure Common causes of this issue: The a

ASP.NET Core部署到Windows IIS

网上已经有许多ASP.NET Core关于Widows IIS部署的文章,在部署到服务器时遇到了一些问题,在这里我就不再对原理进行阐释(复制)了,只写下一些关键环节,想看原理的同学请参考官网,此文章作为留用. 步骤: 1.ASP.NET Core程序内配置 2.Windows Server配置  一.ASP.NET Core应用程序配置 web.config 配置(官方教程) 重点修改 processPath 和 arguments 两个参数 processPath 修改为 dotnet arg

解决ASP.NET Core部署到IIS,更新项目"另一个程序正在使用此文件,进程无法访问"

问题:部署到IIS上的ASP.NET Core项目,在更新的时候会进程占用的错误 初步解决方案: 1,关闭应用程序池 2,关闭网站 3,更新项目 缺点:网站没法访问,部署项目停的时间过长 查询官方文档后,官方给出的方案: 结合官方文档,找到了一个目前看算是比较好的解决方案(一定要看底部的特别注意) 好点的解决方案(一次配置后,1秒钟更新): 1,在D盘根目录创建一个app_offline.htm文件,注意是.htm文件,不是.html 2,创建一个待发布文件夹,把需要更新的项目文件放到该目录下

ASP.NET Core中显示自定义错误页面

在 ASP.NET Core 中,默认情况下当发生500或404错误时,只返回http状态码,不返回任何内容,页面一片空白. 如果在 Startup.cs 的 Configure() 中加上 app.UseStatusCodePages(); ,500错误时依然是一片空白(不知为何对500错误不起作用),404错误时有所改观,页面会显示下面的文字: Status Code: 404; Not Found 如果我们想不管500还是404错误都显示友好的自定义错误页面,该如何实现呢?请看下面的分解.

ASP.NET Core Kestrel 随机404错误

一.Bug 出现 最近遇到一个很诡异的bug,Visual Studio 2017调试ASP.NET Core 2.2 Web程序的时候,随机性的出现404错误.如下图 事实上这个css文件是存在的,你刷新一下,可能又变成其他的css或js文件404.因此就想到可能是ASP.Net Core框架问题,下一步就准备调试一下源代码. 二..Net Core 源代码调试 一开始用PDB Symbol符号去调试,如果你不了解这种调试方法,这篇文章可以帮到你 https://www.cnblogs.com

关于 IIS 上运行 ASP.NET Core 站点的“HTTP 错误 500.19”错误

昨天回答了博问中的一个问题 —— “HTTP 错误 500.19 - Internal Server Error dotnetcore”,今天在这篇随笔中时候事后诸葛亮地小结一下. 服务器是 Windows Server 2008 R2 ,ASP.NET Core 版本是 2.1 ,错误信息如下: HTTP 错误 500.19 - Internal Server Error 无法访问请求的页面,因为该页的相关配置数据无效. 出现这个错误是由于 IIS 无法解析 Web.config 中的 xml