Я использовал 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 работает нормально .. почему?