Как запустить Kestrel за IIS

У меня проблема с запуском основного веб-сайта asp.net на удаленном сервере. Я хочу использовать kestrel с IIS и опубликовал его в Visual Studio 2017. Это моя программа.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, пустельга запускается и очень быстро закрывается. Что я должен делать? пожалуйста, помогите мне


person Babak irannezhad    schedule 28.09.2017    source источник


Ответы (2)


Прежде всего: вам не нужно нажимать на файл приложения .exe, если вы хотите разместить его в IIS. Делая это, вы запускаете его как отдельное приложение. Вместо этого вы должны создать веб-сайт IIS.


Конфигурация через код — это только один из шагов. Вам также необходимо настроить IIS для размещения вашего приложения. Следуйте этому Настройте среду размещения для ASP.NET Core в Windows с IIS. , и разверните на нем официальную документацию, чтобы все правильно настроить.

Примечание. Некоторые шаги отличаются для разных версий ASP.NET Core.

person Set    schedule 28.09.2017

Похоже, выбрасывается какое-то необработанное исключение ("приложение закрывается очень быстро"). Откройте командную строку (cmd.exe), перейдите в папку приложения и запустите .exe из командной строки — он не закроется, и вы увидите сообщение об ошибке.

После того, как вы исправите ошибки (и ваше приложение будет работать на сервере, а не закрыто) - прочитайте Настройте среду размещения для ASP.NET Core в Windows с помощью IIS и выполните развертывание в ней, чтобы узнать, как правильно запускать ваше приложение под IIS или за его пределами. Вкратце: IIS сам запустит ваш .exe (при запуске сайта), нет необходимости запускать его вручную.

person Dmitry    schedule 28.09.2017