0

我在远程服务器上运行 asp.net 核心网站时遇到问题。我想将 kestrel 与 IIS 一起使用,并在 Visual Studio 2017 中发布它是我的 program.cs:

public static void Main(string[] args)
{
var host = new WebHostBuilder()
            .UseKestrel()
            .UseContentRoot(Directory.GetCurrentDirectory())
            .UseUrls("http://example.com")
            .UseIISIntegration()
            .UseStartup<Startup>()
            .UseApplicationInsights()
            .Build();
host.Run();
}

在远程服务器上,当我双击 myWebAppName.exe 时,红隼运行并很快关闭我必须做什么?请帮帮我

4

2 回答 2

3

首先:如果要在 IIS 中托管,则无需单击应用程序 .exe 文件。这样做你将它作为一个独立的应用程序运行。相反,您应该创建一个 IIS 网站。


通过代码进行配置只是步骤之一。您还需要配置 IIS 来托管您的应用程序。按照此使用 IIS 在 Windows 上为 ASP.NET Core 设置托管环境,并将官方文档部署到它以正确设置所有内容。

注意:对于不同的 ASP.NET Core 版本,一些步骤是不同的。

于 2017-09-28T11:02:07.440 回答
1

似乎抛出了一些未处理的异常(“应用程序关闭非常快”)。打开命令行 (cmd.exe),导航到您的应用文件夹并从命令行运行 .exe - 它不会关闭,您会看到错误消息。

修复错误后(并且您的应用程序将在服务器上运行,而不是关闭) - 阅读使用 IIS 在 Windows 上为 ASP.NET Core 设置托管环境,并部署到它以了解如何在 IIS 下/后面正确运行您的应用程序。简而言之:IIS 将自行运行您的 .exe(当网站启动时),无需手动启动它。

于 2017-09-28T11:07:29.543 回答