【问题标题】:.net core 2.0 deployment error to AWS Beanstalk.net core 2.0 对 AWS Beanstalk 的部署错误
【发布时间】:2025-12-05 00:25:02
【问题描述】:

非常努力地在网上搜索有关 .net core 2.0 部署到 aws 的信息,但发现的最新信息很少。 AWS 官方文档对于 core 2.0 来说已经过时了。

我有一个编写 .net core 2.0 的 api,当使用 AWS Toolkit for VS 2017 部署到 aws 时,它说一切都很好而且很健康,但是当浏览到应用程序时,我只是得到:“发生错误时启动应用程序。 .NET Core 4.6.00001.0 X64 v4.0.0.0 | Microsoft.AspNetCore.Hosting 版本 2.0.0-rtm-26452 |微软视窗 10.0.14393 |需要帮助吗?”

从 AWS 控制台,它仍然说一切都很好。是什么赋予了?

16/10/2017 21:44:50         Successfully launched environment: BadderRankIdentity-dev
16/10/2017 21:43:50         Environment health has been set to GREEN
16/10/2017 21:41:41         Added EC2 instance 'i-05028bac256151d66' to Auto Scaling Group 'awseb-e-iemyzku76t-stack-AWSEBAutoScalingGroup-14ZRZLNXL0YML'.
16/10/2017 21:41:41         Adding instance 'i-05028bac256151d66' to your environment.
16/10/2017 21:40:47         Waiting for EC2 instances to launch. This may take a few minutes.
16/10/2017 21:39:59         Created EIP: 35.176.8.210
16/10/2017 21:39:43         Created security group named: sg-37e2165f
16/10/2017 21:39:24         Using elasticbeanstalk-eu-west-2-564641501226 as Amazon S3 storage bucket for environment data.
16/10/2017 21:39:23         createEnvironment is starting.

【问题讨论】:

标签: amazon-web-services asp.net-core-2.0


【解决方案1】:

您可以通过在 Program.cs 文件中设置 .UseSetting("detailedErrors", "true") 和 .CaptureStartupErrors(true) 操作在启动时启用非常有用的开发人员友好的错误消息,如下所示:

public static void Main(string[] args)
{
  var host = new WebHostBuilder()
      .UseKestrel()
      .UseContentRoot(Directory.GetCurrentDirectory())
      .UseSetting("detailedErrors", "true")
      .UseIISIntegration()
      .UseStartup<Startup>()
      .CaptureStartupErrors(true)
      .Build();

  host.Run();
}

显然,一旦您完成故障排除,这些设置应该被删除,以免您的应用程序受到恶意攻击。

同时使用dotnet --version检查您的运行时

另一个对我有用的解决方法是我部署了一个示例 .net 应用程序,然后通过 Visual Studio 更新了新代码。

【讨论】:

  • 如果这解决了您的问题,您可以将其标记为已解决并选择此作为答案
最近更新 更多