linux - Azure应用服务启动命令(必填)

标签 linux azure asp.net-core continuous-deployment azureportal

我正在将 ASP.NET Core 3.1 应用部署到 Azure 应用服务。在创建新的应用服务时,我选择Linux 作为操作系统。在部署中心,当我部署应用程序时,它会提示我输入启动命令。我在任何地方读到它都说启动命令是可选的。但当我部署时,如果没有这个,它就不会进一步。

我最近在 Windows 上部署了其他应用服务,当时这不是问题。我输入的启动命令是dotnet 。它部署成功。但部署后,每当我访问 API 端点时,它都会给出 500 内部服务器错误

我的问题是: 启动命令的目的是什么?为什么部署到 Linux 时返回 500。

最佳答案

看来你的启动命令是正确的引用this .

您可以检查配置中是否已设置此设置,并检查.dll 文件名是否正确。据我所知,在Linux环境下这个设置是必须的。 enter image description here

对于 500 Internal Server Error,这是服务器端的错误,有时这意味着您的 Web 应用程序尚未准备好,重新启动即可解决问题。

如果还没有解决,请检查kudu中的wwwroot文件结构。 ->.scm.azurewebsites.net 如果文件结构不正确,请尝试其他方式部署。

<小时/>

更新

作为您自己的回复,您connected your app to database 。如果问题仍然存在,请尝试添加 sql server 策略,如下所示: enter image description here

关于linux - Azure应用服务启动命令(必填),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65476513/

相关文章:

c++ - SonarQube 包装器在启动时给出 JVM 错误

linux - 如何在 Docker 中处理对/dev/(u)random 等的请求?

azure - Azure 服务总线可以提供消息日记功能吗?

c# - 传递到 ViewDataDictionary 的模型项的类型为 'System.ValueTuple` 2

linux - 为什么命令行说进程在后台运行后停止?

linux - gethostbyname_r() 调用始终返回的不可解析主机,并将 h_errnop 设置为 TRY_AGAIN(在 Ubuntu 19.04 和 20.04 上)

visual-studio-2015 - 从 ASP.NET vNext beta5 迁移到 beta7 后,JWT 承载 token 身份验证错误

c# - 在 .NET Core 2.0 中使用 JWT 基于权限访问资源

azure - 使用 Azure Function 和服务总线进行序列处理

azure - 使用 Azure IoT SDK 中的 ServiceClient.GetFeedbackReceiver() 获取 ACK 消息