Как развернуть приложение Blazor в Интернет-информационных службах (IIS)

kak razvernut prilozhenie blazor v internet informaczionnyh sluzhbah iis

Введение

В этой статье мы узнаем, как развернуть программу Blazor, размещенную на ASP.NET Core, с помощью IIS 10 на компьютере с Windows 10. Мы будем использовать Visual Studio 2017 для публикации программы и SQL Server 2014 для обработки сделок с БД. Мы также устраним некоторые распространенные проблемы с хостингом для Blazor.

Предпосылки

  • Установите IIS на свою машину
  • Установите модуль URL Rewrite об этом

Пожалуйста, обратитесь к моей предыдущей статье «Как создать каскадный DropDownList в Blazor с помощью EF Core», чтобы создать программу, которую мы развернем в этом учебнике.

Установка пакета хостинга .NET Core

Поскольку мы собираемся развернуть программу Blazor, размещенную на ASP.NET Core, первым шагом является установка пакета хостинга .NET Core на нашей машине.

Чтобы загрузить пакет хостинга .NET Core, выполните следующие действия.

Шаг 1

Откройте https://www.microsoft.com/net/download/all

Шаг 2

Выберите из списка последнюю среду выполнения .NET Core без предварительного просмотра. Для этого руководства мы выберем .NET Core Runtime 2.0.7.

Обратитесь к картинке ниже:

yP2moxch5u2x6B6mUdKoT4PRFIKtScQSZgqp

Шаг 3

На странице загрузки во время выполнения .NET Core прокрутите вниз в раздел Windows, выберите ссылку «Установщик пакета хостинга», чтобы загрузить «.NET Core Hosting Bundle».. Обратитесь к картинке ниже:

blMT51CVhgidICtzTNRUxy3XfyyHMysiXuSN

После завершения загрузки дважды щелкните, чтобы начать установку. Вы увидите окно, подобное следующему:

jWreFc9edDlLk9VwB8yRaXKDUiSUQHPRQj-7

Важное примечание

  1. Пакет хостинга .NET Core следует установить только после установки IIS. Если вы используете пакет для установки IIS, вам нужно восстановить пакет после установки IIS, чтобы он обновил свои зависимости для IIS.
  2. Перезапустите компьютер после установки пакета хостинга .NET Core.

Публикация программы Blazor

После успешной установки пакета .NET Core и перезагрузки компьютера откройте программное решение Blazor с помощью VS 2017.

Щелкните правой кнопкой мыши проект сервера вашего решения и нажмите кнопку опубликовать. В этом случае это будет BlazorDDL.Server >> Publish.

9SX4ook9WusBea8tm8oajC4uxAsxZJ5cGcye

Вы увидите экран, похожий на показанное ниже. Выберите «Папка» в меню слева и укажите путь в папку. Вы можете указать любой путь в папку, где вы хотите опубликовать свою программу.

p7U2FgDb0YjAqkvO-obPuDhbqfrSOf1VrDlT

Нажмите на опубликовать. Visual Studio начнет публиковать ваше приложение. Если нет ошибок сборки, ваше приложение будет успешно опубликовано в упомянутой папке.

После успешной публикации мы переходим к настройке IIS.

Настройки IIS

Откройте IIS и щелкните правой кнопкой мыши на Сайты >> Добавить веб-сайт.

Откроется всплывающее окно «Добавить веб-сайт». Здесь нам нужно предоставить детали в трех полях.

  1. Название сайта: введите любое название по вашему выбору. Здесь я поставлю анкицит.
  2. Физический путь: путь в папку, где вы опубликовали свою программу.
  3. Имя хоста: это имя, которое мы вводим в браузер для доступа к нашей программе. Мы поставим ankitsite.com для этой демонстрации.

Нажмите OK для создания веб-сайта. Обратитесь к картинке ниже:

gYvAyWLMlngmRpVgIDgAW0j7ZOcZHtVEDGyR

Следующим шагом является настройка «Пула программ» для нашего сайта. Название пула приложений будет таким же, как и «Название сайта», которое мы предоставили на последнем шаге. Поэтому в этом случае имя пула программ будет «ankitsite».

Щелкните «Пулы программ» на левой панели и дважды щелкните на пуле «ankitsite». Откроется окно «Редактирование пула программ». Выберите «Без управляемого кода» из раскрывающегося меню Версия .NET CLR. Обратитесь к картинке ниже:

6Vzduhtg1YwMvYQUBDZuX6VSaHiSWhwa7Ako

Вот весь процесс настройки IIS разъясняется на изображении gif.

dNoMZnLndfBk7e1Elct13SB0ovTqhMUb136h

Настройка хоста DNS

Последним шагом является настройка нашего файла хоста DNS.

Перейдите к C:\Windows\System32\drivers\etc путь в вашем компьютере и откройте файл «hosts» с помощью любого текстового редактора.

R9jJHC5-mkBuAYjO0Lk17QlzeFxSVyFNFBiQ

Нам нужно добавить имя хоста, которое мы предоставили в IIS, в IP-адрес локального хоста. Обратитесь к картинке ниже:

U1dOrUOXwAcK6EhDnbSOJJja7ex9n7QBrTL-

И теперь мы успешно разместили приложение Blazor на IIS.

Демонстрация выполнения

Откройте любой браузер на своем компьютере и введите имя настроенного хоста. Вы можете увидеть, что приложение откроется в окне обозревателя.

Vcb7-n8EFzMdE9H9MWDQZU8-seObr43fOGPs

Устранение распространенных проблем с хостингом

В этом разделе мы рассмотрим некоторые распространенные проблемы, с которыми можно столкнуться при размещении программы Blazor.

  1. Вы не можете открыть веб-сайт и получаете сообщение об ошибке DNS не найдено

Убедитесь, что имя хоста правильно настроено в файле хоста. Убедитесь, что ваш аппарат не подключен ни к одному серверу VPN. Кроме того, если вы используете любой веб-прокси, выключите его.

2. Ошибка HTTP 500.19 — Внутренняя ошибка сервера — Невозможно получить доступ к запрошенной странице, так как связанные данные конфигурации для страницы недействительны.

Это сообщение об ошибке понятно. Папка публикации недоступна из-за недостаточных разрешений. Предоставьте разрешение на чтение IIS_IUSRS в папке публикации, чтобы она могла получить доступ к файлу Web.config.

3. Веб-сайт загружается, но данные не заполняются, и вы получаете внутреннюю ошибку сервера 500

Убедитесь, что строка подключения имеет правильный формат. Идентификатор пользователя, указанный в своей строке подключения, должен иметь разрешения db_datareader и db_datawriter. Если проблема не исчезнет, ​​разрешите пользователю db_owner.

4. Данные не заполняются, и вы получаете исключение операция не разрешена.

Эта проблема обычно возникает, когда вы пытаетесь выполнить операцию PUT, POST или DELETE в своем веб-API. Чтобы устранить эту проблему, необходимо изменить конфигурацию настройки IIS.

Выделите панель управления >> Включение или выключение Windows. Затем перейдите к Интернет-информационным службам >> World Wide Web Services >> Общие функции HTTP и снимите флажок «Публикация WebDAV» и нажмите «ОК». Обратитесь к картинке ниже:

YA0t4fAfl53A7-LJfqT2ovgkXX1FQmH9PqpL

5. «Не удалось скачать : на запрошенном ресурсе нет заголовка «Access-Control-Allow-Origin».

Причина этой ошибки состоит в том, что клиент и сервер приложения не находятся на одном порту. Браузер ограничит программу осуществлять вызовы веб-API из-за политики того же происхождения. Чтобы решить эту проблему, необходимо включить запросы между происхождением (CORS) в вашем приложении. Пожалуйста, обратитесь к документам Microsoft о включении запросов между источниками (CORS) в ASP.NET Core.

Когда вы повторно публикуете приложение, не забудьте обновить свой веб-сайт, а также пул приложений в IIS.

Вывод

В этой статье мы узнали, как развернуть приложение Blazor в IIS на компьютере с Windows. Мы также узнали, как решить некоторые распространенные проблемы с хостингом при развертывании программы Blazor.

Получите мою книгу Blazor Quick Start Guide, чтобы узнать больше о Blazor.

Вы можете просмотреть мои другие статьи о Blazor здесь.

Вы также можете найти статью на C# Corner.

Смотрите также

Первоначально опубликовано на

Добавить комментарий

Ваш адрес email не будет опубликован.