Есть ли способ отлаживать веб-приложение ASP.NET Core во время работы в IIS?
Я работаю под IIS, потому что мне нужно, чтобы он был доступен через SSL на порту 443.
Есть ли способ отлаживать веб-приложение ASP.NET Core во время работы в IIS?
Я работаю под IIS, потому что мне нужно, чтобы он был доступен через SSL на порту 443.
dotnet.exe
и нажмите "Прикрепить" Примечание. Если вы видите несколько процессов dnx.exe, выберите один из пользователей IIS в имени пользователя столбца. По умолчанию это "IIS APPPOOL {имя вашего пула приложений)"
P.S. Если вы видите процесс dotnet с пустым именем пользователя, запустите Visual Studio как Administrator
С ASP.Net Core 1.0.0 вы должны подключиться к "{youprojectnamet.exe}". Например. если проект имеет имя "Web", вы должны прикрепить к "Web.exe", Также вы можете найти имя исполнителя в следующем разделе web.config
<system.webServer>
<aspNetCore processPath=".\Web.exe" />
</system.webServer>
Преимущество состоит в том, что вы можете фактически использовать веб-сайт за пределами, используя фактическое имя хоста. Представьте, что приложение android пытается подключиться к localhost для отладки основного веб-сервиса asp.net. боль в настройке, если вы не можете фактически использовать фактический физический IP-адрес и подключиться к чему-то, работающему на iis. Как прежде. Все может быть сделано, но это не значит, что оно новое автоматически становится более практичным. И не имея старой опции debug iis, это шаг назад с точки зрения производительности.
Это действительно необходимо? Приложения ASP.NET Core запускаются как внешний процесс для IIS (с использованием dotnet.exe), поэтому отладки через IIS действительно ничего не получается. Бэкэнд-приложение получает запросы по простому HTTP.
Подробнее о том, как работает реальный хостинг IIS с ASP.NET Core, вы можете проверить это сообщение в блоге: http://weblog.west-wind.com/posts/2016/Jun/06/Publishing-and-Running-ASPNET-Core-Applications-with-IIS
Visual Studio в настоящее время не поддерживает отладку под полным IIS, и из того, что я слышал, это не то, что планируется. Microsoft поддерживает работу с IIS Express, и вы можете настроить сертификат для IIS Express.
В проекте ASP.NET Core в параметрах Debug Project есть опция Включить SSL, которую вы можете включить. IIS Express создаст локальный сертификат и позволит вам отлаживать ваше приложение с помощью SSL.
Преимущество такого подхода заключается в том, что он просто работает, нажав F5 - не требуется ручное вложение.
Просто прошел историю и наткнулся на эту. В случае, если кто-то каждый дойдет до этого вопроса... решение для меня оказалось довольно простым. Если вы используете аутентификацию в своем основном приложении .net, просто убедитесь, что она использует базовый auth с использованием HTTP (для части отладки). Затем в IIS просто используйте Url Rewrite для установки обратного прокси-сервера в ваш http://localhost:someport. Это. Задача решена. Возможно, url rewrite скоро поддержит https, и в этом случае базовая версия auth с использованием HTTP также может использоваться для целей отладки. Что было бы здорово. Но пока эта установка решила все мои проблемы.