внутренняя ошибка сервера при попытке доступа к основному приложению asp.net, размещенному в IIS 10 - PullRequest
0 голосов
/ 29 мая 2018

Я использовал VS2017 для создания основного API-приложения ASP.NET, просто простое. Я даже не вносил в него никаких изменений.он был в состоянии скомпилировать просто отлично, мог отладить в IIS Express просто отлично ... вы знаете, по умолчанию / api / values, который возвращает {значение1, значение2} .. просто по умолчанию ..

Я пыталсяразместить его в IIS 10 в Windows 10. Добавлен пул приложений, в котором для версии .NET CLR задано «Нет управляемого кода», а все остальное по умолчанию.Используя VS2017, опубликованный в папке, установите IIS для указания на эту папку, установите для него порт 8080. Попытался получить доступ к нему в браузере с 127.0.0.1:8080/api/values ​​и .. HTTP Error 500.19 - Internal Server Error.Зачем?что я не сделал?

В командной строке, набрав dotnet --info, вы увидите версию как 2.1.200, а .net framework - 2.0.7.На самом деле, я даже смог запустить приложение прямо из командной строки, набрав «dotnet .dll», и оно показало прослушивание на порту 5000, и я смог использовать браузер для доступа к 127.0.0.1:5000/api/values ​​и{values1, values2} появится в браузере.Но почему я не могу использовать IIS для его размещения?

Говоря об использовании командной строки для запуска приложения с использованием kestrel, я заметил странную вещь.установив аргументы в configure, я смог использовать URL для динамического изменения порта, который прослушивает kestrel, и мне удалось включить удаленный доступ к kestrel, например, с помощью dotnet .dll --urls http://*:5050, и он работает нормально... НО ... когда я устанавливаю порт на 6000 или выше, kestrel сказал бы, что прослушивает этот порт, но удаленный клиент не сможет получить к нему доступ.кто-нибудь сталкивался с этим?использование портов в диапазоне 5000 ~ 5999 работает нормально .. почему?

1 Ответ

0 голосов
/ 29 мая 2018

Убедитесь в следующем:

  1. .NET Hosting Bundle, установленный на хост-сервере - https://www.microsoft.com/net/download/all
  2. Версия пула приложений .NET CLR установлена ​​на "No Managed Code"
  3. Убедитесь, что у пользователя удостоверения пула приложений есть разрешения на чтение для опубликованной папки.

Для получения подробной информации проверьте: https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/?view=aspnetcore-2.0

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...