Получение параметров публикации из IIS и импорт в Visual Studio
Вы можете использовать средство публикации
Эти действия применяются к веб-приложениям ASP.NET и ASP.NET Core.
Заметка
Файл параметров публикации (*.publishsettings) отличается от профиля публикации (*.pubxml). Файл параметров публикации создается в службах IIS, а затем его можно импортировать в Visual Studio. Visual Studio создает профиль публикации.
Необходимые условия
Visual Studio, установленная с набором компонентов ASP.NET и веб-разработки. Если вы уже установили Visual Studio:
- Установите последние обновления в Visual Studio, выбрав Справка>Проверить обновления.
- Добавьте задачу, выбрав Tools>Получить инструменты и функции.
На сервере необходимо запустить Windows Server 2012 или более поздней версии, и необходимо правильно установить роль веб-сервера IIS
(необходимо создать файл параметров публикации ( ). На сервере также необходимо установить ASP.NET 4.5 или ASP.NET Core. Действия, описанные в этом руководстве, были протестированы в Windows Server 2022. Чтобы настроить ASP.NET Core, см. Хостинг ASP.NET Core на Windows с IIS. Для ASP.NET Core убедитесь, что пул приложений настроен для использования безуправляемого кода, как описано в статье.
Для настройки ASP.NET 4.5 посмотрите раздел IIS 8.0 с использованием ASP.NET 3.5 и ASP.NET 4.5.
Заметка
IIS в Windows не поддерживает создание настроек публикации. Однако вы можете опубликовать в IIS с помощью средства публикации в Visual Studio.
Установка и настройка веб-развертывания на Windows Server
Веб-развертывание предоставляет дополнительные функции конфигурации, позволяющие создавать файл параметров публикации из пользовательского интерфейса.
Заметка
Установщик веб-платформы был снят с поддержки 01.07.22. Дополнительные сведения см. в разделе Установщик веб-платформы — прекращение поддержки и вывод из эксплуатации канала продукта или приложения. Вы можете непосредственно установить Web Deploy 4.0, чтобы создать файл настроек публикации.
Если вы еще не установили средства и скрипты управления IIS, установите их сейчас.
Перейдите к Выберите роли сервера>веб-сервер (IIS)>средства управления, а затем выберите роль скриптов управления IIS и средств, нажмите кнопку Далее, а затем установите роль.
Скрипты и инструменты необходимы для обеспечения возможности создания файла параметров публикации.
Убедитесь, что вы также установите Службу управления и Консоль управления IIS (они уже могут быть установлены).
На Windows Server скачайте Web Deploy 4.0.
Запустите программу установки Web Deploy и удостоверьтесь в выборе Полная установка вместо типовой установки.
После полной установки вы получите компоненты, необходимые для создания файла параметров публикации. (Если вместо этого выбрать настраиваемые, можно увидеть список компонентов, как показано на следующем рисунке.)
(Необязательно) Убедитесь, что Web Deploy выполняется правильно, открыв Панель управления > Система и безопасность > Администрирование > Службы, а затем проверьте, что:
выполняется служба агента веб-развертывания (имя службы отличается в более ранних версиях).
Служба веб-управления запущена.
Если одна из служб агентского сервиса не запущена, перезапустите службу агента веб-развертывания .
Если служба агента веб-развертывания отсутствует, перейдите к Панели управления > Программы > Удаление программ, найдите Microsoft Web Deploy <версии>. Выберите Изменить установки и убедитесь, что вы выбрали Будет установлен на локальный жесткий диск для компонентов веб-развертывания. Выполните действия по установке изменений.
Создание файла параметров публикации в IIS на Windows Server
Закройте и снова откройте консоль управления IIS, чтобы отобразить обновленные параметры конфигурации в пользовательском интерфейсе.
В IIS щелкните правой кнопкой мыши веб-сайт по умолчанию, выберите Развернуть>Настроить публикацию веб-развертывания.
Если вы не видите меню "Развертывание
", ознакомьтесь с предыдущим разделом, чтобы убедиться, что веб-развертывание запущено. В диалоговом окне "Настройка публикации через веб-развертывание" проверьте настройки.
Щелкните настройки.
На панели Результатов выходные данные показывают, что права доступа предоставлены указанному пользователю, и что файл с расширением .publishsettings создан в расположении, показанном в диалоговом окне.
<?xml version="1.0" encoding="utf-8"?> <publishData> <publishProfile publishUrl="https://myhostname:8172/msdeploy.axd" msdeploySite="Default Web Site" destinationAppUrl="http://myhostname:80/" profileName="Default Settings" publishMethod="MSDeploy" userName="myhostname\myusername" /> </publishData>
В зависимости от конфигурации Windows Server и IIS в XML-файле отображаются разные значения. Ниже приведены некоторые сведения о значениях, которые вы видите:
Файл msdeploy.axd, на который ссылается атрибут
publishUrl
, является динамически созданным файлом обработчика HTTP для веб-развертывания. (В целях тестированияhttp://myhostname:8172
тоже обычно работает.)Для порта
publishUrl
задан порт 8172, используемый по умолчанию для веб-развертывания.Для порта
destinationAppUrl
задан порт 80, который используется по умолчанию для IIS.Если в последующих шагах не удается подключиться к удаленному узлу из Visual Studio с помощью имени узла, проверьте IP-адрес сервера вместо имени узла.
Заметка
Если вы публикуете на IIS, работающий на виртуальной машине Azure, необходимо открыть входящий порт для Web Deploy и IIS в группе безопасности сети. Подробные сведения см. в разделе Открытие портов для виртуальной машины.
Скопируйте этот файл на компьютер, на котором выполняется Visual Studio.
Импорт параметров публикации в Visual Studio и развертывание
На компьютере, где открыт проект ASP.NET в Visual Studio, щелкните проект правой кнопкой мыши в Проводнике решений и выберите Опубликовать.
Если вы ранее настроили любые профили публикации, появится панель публикации. Щелкните Создать или Создать новый профиль.
Выберите параметр импорта профиля.
В диалоговом окне Публикация щелкните Импорт профиля.
публиковать
Перейдите к расположению файла параметров публикации, созданного в предыдущем разделе.
В диалоговом окне импорта файла параметров публикации перейдите и выберите профиль, который вы создали в предыдущем разделе, и нажмите Открыть.
Нажмите кнопку Готово, чтобы сохранить профиль публикации, а затем нажмите Опубликовать.
Visual Studio начинает процесс развертывания, а окно вывода отображает ход выполнения и результаты.
Если возникают ошибки развертывания, щелкните Дополнительные действия>Настроить, чтобы изменить параметры. Внесите изменения в параметры и щелкните Подтвердить, чтобы протестировать новые настройки. Если имя узла не найдено, попробуйте использовать IP-адрес вместо имени узла в полях сервера
и целевого URL-адреса .
После успешного развертывания приложения он должен запускаться автоматически.
Распространенные проблемы
Сначала проверьте окно вывода в Visual Studio для получения сведений о состоянии и проверьте сообщения об ошибках. В дополнение:
- Если вы не можете подключиться к узлу с помощью имени узла, попробуйте использовать IP-адрес.
- Убедитесь, что необходимые порты открыты на удаленном сервере.
- Для ASP.NET Core в службах IIS необходимо убедиться, что для DefaultAppPool в поле пула приложений установлено значение Нет управляемого кода.
- Убедитесь, что версия ASP.NET, используемая в приложении, совпадает с версией, установленной на сервере. Для приложения можно просмотреть и задать версию на странице свойств . Чтобы установить приложение на другую версию, ее необходимо установить.
- Если приложение попыталось открыть, но появится предупреждение о сертификате, выберите доверять сайту. Если предупреждение уже закрыто, можно изменить файл *.pubxml в проекте и добавить следующий элемент:
<AllowUntrustedCertificate>true</AllowUntrustedCertificate>
. Этот параметр предназначен только для тестирования! - Если приложение не начинается с Visual Studio, запустите приложение в IIS, чтобы проверить правильность развертывания.