Bal*_*u K 16 kestrel .net-core asp.net-core asp.net-core-2.1
我正在配置HTTPS的结构应用程序上工作。尽管我具有有效的安装证书,但它引发异常。
hik*_*uen 34
我希望单独的答案没问题,因为我没有代表发表评论。这是我找到的解决方案,我在 SO 或其他网站上的其他任何地方都没有看到。这是特定于 Windows 证书管理器的,不确定其他操作系统是否遇到类似问题。
dotnet dev-certs https 争论我尝试了dotnet dev-certs httpswith --trust, --clean --verbose(实际上似乎没有记录任何附加信息)和--check(从未找到证书)的各种组合
正如其他答案中所建议的,我删除了Trusted Root Certification Authorities\Certificates下的所有localhost证书,certmgr.msc并与dotnet dev-certs https --clean
最终我意识到,除了Trusted Root Certification Authorities\Certificates下的证书外,certmgr.msc还显示了Personal\Certificates下的许多本地主机证书。原来,这些都需要删除。
然后运行dotnet dev-certs https -t一次创建并信任一个新的开发证书。
我通过调试 ASP.NET Core 应用程序进行了验证。另一种验证方法是运行dotnet dev-certs https --check --verbose
Ste*_*hen 14
我在OSX和dotnet dev-certs https --clean并sudo dotnet dev-certs https --clean没有为我工作。最终,我可以通过以下步骤对其进行修复。
localhost证书dotnet dev-certs https -t现在,您应该可以正常运行了。
Vel*_*ian 10
对我来说,删除下面的文件file:\\%APPDATA%\Microsoft\SystemCertificates\My\Certificates并在 cmd 中运行dotnet dev-certs https -t解决了我的问题。
我在使用 Visual Studio 的 Windows 10 系统上遇到了这个问题。问题似乎是 GUI 中用于清除 HTTPS 本地证书的命令失败,并显示一条我无法再重现的错误消息。
我的解决方案是打开当前 Windows 帐户的 certmgr 并删除所有个人本地主机证书。那里有大约 20 个证书给我,因为我已经多次尝试重新创建它们。删除所有这些证书后,我再次运行了我的 .Net 核心 HTTPS API,一切正常!
总之,为当前用户打开 certmgr 并清除所有个人/本地主机证书。
如果您正在访问此页面,并且您像我一样不幸地尝试了此页面上提到的每一个解决方案/方法但没有任何效果,那么您可能想知道我做了什么并解决了我的问题。
无论我删除本地主机证书多少次,我都会从 ASP.NET Core Web 应用程序中收到此错误。
然后,我使用 Powershell 和此命令创建了一个自签名证书。[我从互联网上的某个地方复制了这个 PowerShell 片段。不记得来源了。] 首先,请确保您的计算机上有一个可写位置:C:\temp\。(您可以使用任何其他路径,只要您的网络应用程序可以读取即可)
$cert = New-SelfSignedCertificate -DnsName mydemowebapp.net -CertStoreLocation cert:\LocalMachine\My
$pwd = ConvertTo-SecureString -String "MyPassword" -Force -AsPlainText
Export-PfxCertificate -Cert $cert -FilePath C:\temp\cert.pfx -Password $pwd
Run Code Online (Sandbox Code Playgroud)
然后,在我的 appsertings.Development.json 中,我添加了此条目。
"Kestrel": {
"EndPoints": {
"Https": {
"Url": "https://localhost:5000",
"Certificate": {
"Path": "C:\\temp\\cert.pfx",
"Password": "MyPassword",
"AllowInvalid": "true"
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
运行应用程序,繁荣!问题解决了。我使用了与在 LaunceSettings 中找到的相同的 URL https://localhost:5000。
我讨厌这样的解决方案,但至少我可以用这样的解决方案继续我的开发。我不知道最近到底发生了什么,我不得不面对这个问题。那是 Windows 更新吗?或者是其他东西?我不知道。我以前没有遇到过这个问题,直到最近。是的,我记得在 Kestrel 而不是 IIS 中运行网站。
在 Windows 中, dotnet dev-certs https --clean对我不起作用,我必须手动删除这些本地主机证书。
dotnet dev-certs https -t我在 Mac (macOS 12.6.7) 上尝试在 VS Code 中运行 ASP.NET Core 网站项目,以上答案都不适合我。只是差不多而已。
我是如何让它发挥作用的。在终端中运行以下命令:
dotnet cleandotnet dev-certs https --cleandotnet dev-certs https --trust现在我可以使用浏览器运行该项目dotnet run并重新加载浏览器。
PS:如果你懒的话,你也可以像这样链接命令:dotnet clean && dotnet dev-certs https --clean && dotnet dev-certs https --trust
我有一个类似(但不完全相同)的问题。
对于 2.1,您必须配置您的证书。
我现在完全在 appsettings.json 中执行此操作。
您可以在这里找到我的帖子:
使用 https(互联网 Web 服务器)证书配置自托管 Kestrel 应用程序
只看一下解决方案...
| 归档时间: |
|
| 查看次数: |
12736 次 |
| 最近记录: |