Подтвердить что ты не робот

Как настроить ASP.NET Core 1.0 для использования локального IIS вместо IIS Express?

Как настроить .NET Core 1.0 для использования Local IIS вместо IIS Express при отладке?

Я пробовал модифицировать файл launchSettings.json различными способами. Например, заменив все вхождения IIS Express на Локальный IIS и обновив applicationUrl и launchUrl, чтобы использовать мои пользовательские localhost http://sample.local (я уже обновил файл хоста и настроил диспетчер IIS), но не доволен.

Настройки по умолчанию для файла Свойства /launchSettings.json:

{
  "iisSettings": {
    "windowsAuthentication": false,
    "anonymousAuthentication": true,
    "iisExpress": {
      "applicationUrl": "http://localhost:38601/",
      "sslPort": 0
    }
  },
  "profiles": {
    "IIS Express": {
      "commandName": "IISExpress",
      "launchBrowser": true,
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    },
    "SampleApp": {
      "commandName": "Project",
      "launchBrowser": true,
      "launchUrl": "http://localhost:5000",
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    }
  }
}
4b9b3361

Ответ 1

В настоящее время вы не можете напрямую использовать IIS для размещения основного приложения ASP.NET во время разработки, поскольку папка разработки не предоставляет все необходимые файлы, необходимые для размещения IIS. Это делает запуск ASP.NET Core в среде разработки немного болью.

Как указано в этой статье Рика Стралла, есть несколько причин попробовать и сделать это. IIS делает очень мало при запуске приложений ASP.NET Core - на самом деле ваше приложение больше не работает непосредственно в процессе IIS, а работает в совершенно отдельном консольном приложении, на котором размещен веб-сервер Kestrel. Поэтому вы действительно работаете по существу в той же среде, когда вы самостоятельно размещаете консольное приложение.

Если вам нужно опубликовать свое приложение, вы можете сделать это в локальной папке, используя либо командную строку dotnet, либо используя инструменты Visual Studio.

Например, если вы хотите опубликовать в папку C:\output, вы можете использовать следующую команду:

dotnet publish
  --framework netcoreapp1.0 
  --output "c:\temp\AlbumViewerWeb" 
  --configuration Release

Затем вы можете указать свой сайт IIS в выходной папке. Убедитесь, что вы устанавливаете версию CLR пула приложений в No Managed Code и что AspNetCoreModule доступен.

Подробнее см. https://docs.asp.net/en/latest/publishing/iis.html