gpt4 book ai didi

c# - ASP.NET Core 应用只能以 root 身份运行

转载 作者:行者123 更新时间:2023-11-30 16:40:17 26 4
gpt4 key购买 nike

我刚刚将我的 ASP.NET 核心应用程序上的所有 Microsoft 程序包更新为最新的 2.1 版本(并将我的 CentOS 服务器上的 SDK 更新为 2.1.4)并将代码推送到服务器。我在服务器端重建代码并将其部署到 Web 根目录。除非它以 root 身份运行,否则我现在无法让服务器响应。尝试通过 Apache 代理连接时,我收到 502 代理错误,当我尝试直接连接到 Kestrel 服务器正在监听的 SSL 端口时,我收到 ERR_CONNECTION_CLOSED在 Chrome 中。

如果我以 root 用户身份手动运行网站 (dotnet WebsiteMainDll.dll),它工作正常。如果我以用户身份手动运行它,它应该以 (sudo -u siteuser dotnet WebsiteMainDll.dll) 运行,它不起作用。

控制台中没有显示任何错误。它只显示 Now listening on https://0.0.0.0:44313 并且从那时起就保持沉默。

我有另一个站点实例在预更新的代码库上运行,它以站点用户身份运行良好。此实例在更新前运行良好。怎么回事?

最佳答案

我发现这是由于一些本地 SSL 证书的权限问题。我觉得 .NET SDK 更新在我的系统上安装了新的包,弄乱了权限,或者新的 ASP.NET Core NuGet 包之一改变了 Core 中 SSL 的处理方式。

我在这里找到了解决方案:https://github.com/dotnet/cli/issues/9391

关于c# - ASP.NET Core 应用只能以 root 身份运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51605887/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com