Поделиться через


Удаленная отладка ASP.NET Core на удаленном компьютере IIS в Visual Studio

Чтобы выполнить отладку приложения ASP.NET Core, развернутого в IIS, установите и запустите удаленные средства на компьютере, где развернуто приложение, а затем подключитесь к работающему приложению из Visual Studio.

компоненты удаленного отладчика

В этом руководстве объясняется, как подготовить и настроить среду разработки для ASP.NET Core в Visual Studio, развернуть его на IIS и подключить удаленный отладчик из Visual Studio. См. об удаленной отладке ASP.NET 4.8 на компьютере IIS. Вы также можете развертывать и отлаживать на IIS с помощью Azure. Сведения о службе приложений Azure см. в статье Удаленная отладка ASP.NET Core в Azure или для Visual Studio Enterprise используйте Снимок Отладчика (требуется .NET 4.6.1).

Необходимые условия

Visual Studio 2019 или более поздней версии требуется для выполнения действий, описанных в этой статье.

Эти процедуры были проверены на этих конфигурациях сервера:

  • Windows Server 2022 и IIS 10
  • Windows Server 2019 и IIS 10
  • Windows Server 2016 и IIS 10

Требования к сети

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

Приложение, уже работающее в IIS?

В этой статье описаны действия по настройке базовой конфигурации IIS на сервере Windows Server и развертывании приложения из Visual Studio. Шаги предназначены для того, чтобы убедиться, что на сервере установлены необходимые компоненты, что приложение может работать корректно и что вы готовы к удалённой отладке.

  • Если ваше приложение работает под управлением IIS и вы хотите скачать удаленный отладчик, чтобы начать отладку, перейдите к скачивание и установка удаленных средств отладки на Windows Server.

  • Если вам нужна помощь, чтобы убедиться, что приложение настроено, развернуто и работает правильно в IIS, чтобы можно было выполнить отладку, выполните все действия, описанные в этой статье.

Создание приложения ASP.NET Core на компьютере Visual Studio

  1. Создайте веб-приложение ASP.NET Core.

    В Visual Studio выберите "Файл">окно "Пуск", чтобы открыть окно запуска, а затем выберите "Создать проект". В поле поиска введите веб-приложение, а затем выберите C# в качестве языка, а затем выберите ASP.NET Core Web Application (model-View-Controller), а затем нажмите кнопку Далее. На следующем экране назовите проект MyASPApp, а затем нажмите кнопку Далее.

    Выберите рекомендуемый целевой фреймворк или .NET 8, а затем выберите Создать. Версия должна соответствовать версии, установленной на сервере.

  2. Откройте файл HomeController.cs в папке Controllers и задайте точку останова в инструкции return View; в методе Privacy.

    В старых шаблонах откройте файл Privacy.cshtml.cs и установите точку останова в методе OnGet.

Установка и настройка IIS на Windows Server

В этих шагах показана только базовая конфигурация IIS. Дополнительные сведения или установку на компьютер с Windows Desktop см. в разделе публикации на IIS или IIS 8.0 с помощью ASP.NET 3.5 и ASP.NET 4.5.

Для операционных систем Windows Server используйте мастер добавления ролей и компонентов с помощью ссылки "Управление" или ссылку панели мониторинга в диспетчер сервера. На этапе роли сервера установите флажок для веб-сервера (IIS).

снимок экрана: роль IIS веб-сервера, выбранная на шаге выбора ролей сервера.

(Windows Server 2022) В появившемся диалоговом окне выберите Добавить компоненты, чтобы добавить консоль управления IIS.

На шаге служб ролей выберите нужные службы ролей IIS или примите предоставленные службы ролей по умолчанию. Если вы хотите включить развертывание с помощью параметров публикации и веб-развертывания, убедитесь, что выбраны следующие функции:

  • скрипты и средства управления IIS
  • службы управления
  • Консоль управления IIS

снимок экрана: выбранные скрипты и средства управления IIS.

Выполните действия по подтверждению для установки роли и служб веб-сервера. Перезапуск сервера или IIS не требуется после установки роли веб-сервера (IIS).

Обновление параметров безопасности браузера в Windows Server

Если вы используете старую версию Windows Server, может потребоваться добавить некоторые домены в качестве доверенных сайтов, чтобы вы могли скачать некоторые компоненты веб-сервера. Добавьте доверенные сайты, перейдя > параметры безопасности > доверенных сайтов > сайтов. Добавьте следующие домены.

  • microsoft.com
  • go.microsoft.com
  • download.microsoft.com
  • iis.net

При скачивании программного обеспечения вы можете получить запросы на предоставление разрешения на загрузку различных скриптов и ресурсов веб-сайта. Некоторые из этих ресурсов не требуются, но для упрощения процесса выберите Добавить, когда будет предложено.

Установка ASP.NET Core на Windows Server

  1. Установите пакет размещения платформы .NET Core на системе размещения. Пакет устанавливает среду выполнения .NET Core, библиотеку .NET Core и модуль ASP.NET Core. Для получения более подробных инструкций, см. публикацию в IIS.

    Чтобы установить текущий пакет хостинга .NET Core, установите пакет хостинга ASP.NET Core.

    Заметка

    Если вы ранее установили IIS, модуль IIS ASP.NET Core устанавливается с ASP.NET Core. В противном случае установите модуль IIS ASP.NET Core вручную.

    Для .NET Core 2 установите .NET Core Windows Server Hosting.

    Заметка

    Если у системы нет подключения к Интернету, получите и установите распространяемыйMicrosoft Visual C++ 2015 перед установкой пакета размещения Windows Server .NET Core.

  2. Перезапустите систему (или выполните net stop was /y, а затем net start w3svc из командной строки, чтобы применить изменения в системной переменной PATH).

Выбор варианта развертывания

Если вам нужна помощь по развертыванию приложения в IIS, рассмотрите следующие варианты:

  • Развертывание начните с создания файла параметров публикации в IIS и импорта этих параметров в Visual Studio. В некоторых сценариях это быстрый способ развертывания приложения. При создании файла параметров публикации разрешения автоматически настраиваются в IIS.

  • Развертывание путем публикации в локальной папке и копирования выходных данных с помощью предпочтительного метода в подготовленную папку приложения в IIS.

(Необязательно) Развертывание с помощью файла параметров публикации

Этот параметр можно использовать для создания файла параметров публикации и импорта его в Visual Studio.

Заметка

Если вы хотите вручную настроить веб-развертывание вместо импорта параметров публикации, необходимо убедиться, что папка приложения на сервере настроена с правильными значениями и разрешениями (см. раздел Настройка ASP.NET веб-сайта).

Настройка веб-сайта ASP.NET Core

  1. В диспетчере IIS в левой области в разделе Подключениявыберите пулы приложений. Откройте DefaultAppPool и задайте версии .NET CLR значение Без управляемого кода. Это необходимо для ASP.NET Core. Веб-сайт по умолчанию использует DefaultAppPool.

  2. Остановите и перезапустите DefaultAppPool.

Установка и настройка веб-развертывания на Windows Server

Веб-развертывание предоставляет дополнительные функции конфигурации, позволяющие создавать файл параметров публикации из пользовательского интерфейса.

Заметка

Установщик веб-платформы был снят с эксплуатации 1 июля 2022 года. Дополнительные сведения см. в разделе Установщик веб-платформы, прекращение поддержки и снятие с эксплуатации канала продуктов/приложений. Вы можете напрямую установить Web Deploy 4.0, чтобы создать файл параметров публикации.

  1. Если вы еще не установили сценарии управления и средства IIS, установите их сейчас.

    Перейдите к Выберите роли сервера>веб-сервер (IIS)>средства управления, а затем выберите роль скриптов управления IIS и средств, нажмите кнопку Далее, а затем установите роль.

    установка скриптов и средств управления IIS

    Скрипты и средства необходимы для создания файла настроек публикации.

    Убедитесь, что вы также установите Службу управления и консоль управления IIS (они могут быть уже установлены).

  2. В Windows Server скачать веб-развертывание 4.0.

  3. Запустите программу установки Web Deploy и убедитесь, что вы выбрали Полная установка, а не обычная установка.

    После полной установки вы получите компоненты, необходимые для создания файла параметров публикации. (Если вы выберете Пользовательский, можно будет увидеть список компонентов, как показано на следующем рисунке.)

    Снимок экрана, показывающий компоненты Web Deploy 4.0

  4. (Необязательно) Убедитесь, что веб-развертывание выполняется правильно, открыв панель управления >> средства администрирования >служб >, а затем убедитесь, что:

    • Служба агента веб-развертывания запущена (название службы отличается в более ранних версиях).

    • Служба веб-управления запущена.

    Если одна из служб агента не запущена, перезапустите службу агента веб-развертывания.

    Если служба агента веб-развертывания отсутствует, перейдите в Панель управления > Программы > Удаление программы, найдите Microsoft Web Deploy <версии>. Выберите Изменить установки и убедитесь, что вы выбрали Будет установлен на локальный жесткий диск для компонентов веб-развертывания. Выполните действия по установке изменений.

Создание файла параметров публикации в IIS на Windows Server

  1. Закройте и снова откройте консоль управления IIS, чтобы отобразить обновленные параметры конфигурации в пользовательском интерфейсе.

  2. В IIS щелкните правой кнопкой мыши Default Web Site, выберите Deploy>Configure Web Deploy Publishing.

    Настройка конфигурации веб-развертывания

    Если вы не видите меню "Развертывание ", ознакомьтесь с предыдущим разделом, чтобы убедиться, что веб-развертывание запущено.

  3. В диалоговом окне Настройка публикации веб-развертывания проверьте параметры.

  4. Щелкните Настройка.

    На панели Результаты показано, что права доступа предоставлены указанному пользователю, а файл с расширением .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 в группе безопасности сети. Подробные сведения см. в разделе Открытие портов для виртуальной машины.

  5. Скопируйте этот файл на компьютер, на котором выполняется Visual Studio.

Импорт параметров публикации в Visual Studio и развертывание

  1. На компьютере, где открыт проект ASP.NET в Visual Studio, щелкните проект правой кнопкой мыши в Окне обозревателя решений и выберите Опубликовать.

    Если вы ранее настроили профили публикации, появится панель публикации . Щелкните Создать или Создать новый профиль.

  2. Выберите параметр импорта профиля.

    В диалоговом окне Публикация щелкните Импорт профиля.

    Выбрать публикацию

  3. Перейдите к расположению файла параметров публикации, созданного в предыдущем разделе.

  4. В диалоговом окне импорта файла параметров публикации перейдите и выберите профиль, созданный в предыдущем разделе, и щелкните Открыть.

    Нажмите кнопку Готово, чтобы сохранить профиль публикации, а затем нажмите Опубликовать.

    Visual Studio начинает процесс развертывания, а окно вывода отображает ход выполнения и результаты.

    Если Вы столкнетесь с какими-либо ошибками развертывания, щелкните Дополнительные действия>, а затем Изменить, чтобы настроить параметры. Измените параметры и щелкните Подтвердить, чтобы протестировать новые настройки. Если имя узла не найдено, попробуйте использовать IP-адрес вместо имени узла в полях сервера и целевого URL-адреса.

    Редактировать параметры в средстве публикации

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

  • Если приложение не запускается после развертывания, запустите приложение в IIS, чтобы убедиться, что оно работает правильно.
  • Для ASP.NET Core убедитесь, что в поле пула приложений для DefaultAppPool задано значение Без управляемого кода.

Когда вы будете готовы, переключитесь в конфигурацию отладки.

Важный

Если вы решили отладить конфигурацию выпуска, при публикации отключите отладку в файле web.config.

  1. Выберите Дополнительные параметры>Изменить, чтобы изменить профиль, а затем выберите Параметры.
  2. Выберите Сохранить и повторно опубликуйте приложение.
  3. Выберите конфигурацию отладки и выберите Удалить дополнительные файлы в назначении в разделе опции публикации файлов.
  1. Выберите Изменить, чтобы изменить профиль, а затем выберите Настройки.
  2. Выберите Сохранить и повторно опубликуйте приложение.
  3. Выберите конфигурацию отладки, а затем выберите Удалить дополнительные файлы в папке назначения в разделе параметры публикации файлов.

Предупреждение

Использование учетных данных имени пользователя и пароля (обычная проверка подлинности) не является самым безопасным способом проверки подлинности. По возможности используйте альтернативные методы. Например, попробуйте опубликовать пакет из Visual Studio, а затем использовать WebDeploy.exe из командной строки для развертывания пакета. С помощью этого метода в IIS Manager можно настроить авторизованных пользователей Windows, которые имеют право публиковать на веб-сервер, а также запускать WebDeploy.exe под этой учетной записью пользователя Windows. См. установку и настройку Web Deploy в IIS 8.0 или более поздней версии. Если вы используете учетные данные паролей, обязательно используйте надежный пароль и защитите пароль от утечки или общего доступа.

(Необязательно) Развертывание путем публикации в локальной папке

Этот параметр можно использовать для развертывания приложения, если вы хотите скопировать приложение в IIS с помощью PowerShell, RoboCopy или вручную скопировать файлы.

Настройка веб-сайта ASP.NET Core на компьютере Windows Server

  1. Откройте проводник Windows и создайте новую папку C:\Publish, чтобы развернуть проект ASP.NET Core.

  2. Если он еще не открыт, откройте Диспетчер IIS. (В левой области диспетчера серверов выберите IIS. Щелкните сервер правой кнопкой мыши и выберите диспетчер служб IIS.)

  3. В разделе Подключения в левой области перейдите к Сайтам.

  4. Выберите веб-сайт по умолчанию, выберите базовые параметрыи задайте физический путь на C:\Publish.

  5. Щелкните правой кнопкой мыши узел веб-сайта по умолчанию и выберите Добавить приложение.

  6. Задайте для поля псевдонима значение MyASPApp, примите пул приложений по умолчанию (DefaultAppPool), и задайте физический путь как C:\Publish.

  7. В разделе Подключениявыберите пулы приложений. Откройте DefaultAppPool и задайте для поля пула приложений значение без управляемого кода.

  8. Щелкните правой кнопкой мыши новый сайт в диспетчере IIS, выберите Изменить разрешенияи убедитесь, что IUSR, IIS_IUSRS или пользователь, настроенный для доступа к веб-приложению, является уполномоченным пользователем с правами на чтение & выполнение.

    Если вы не видите одного из этих пользователей с доступом, выполните действия по добавлению IUSR в качестве пользователя с правами на чтение & Execute.

Важный

Сведения о безопасности, связанные со встроенными учетными записями, см. в статье Общие сведения о Built-In учетных записях пользователей и групп в IIS 7.

Публикация и развертывание приложения путем публикации в локальной папке из Visual Studio

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

  1. В Обозревателе решений щелкните правой кнопкой мыши узел проекта и выберите Опубликовать (для веб-форм Опубликовать веб-приложение).

    Если вы ранее настроили какие-либо профили публикации, появится панель публикации. Щелкните Создать профиль.

  2. В диалоговом окне Публикация выберите Папка, щелкните Обзори создайте новую папку C:\Publish.

    снимок экрана: диалоговое окно выбора целевого объекта публикации в Visual Studio с папкой

    Нажмите кнопку Готово, чтобы сохранить профиль публикации.

    снимок экрана: диалоговое окно выбора целевого объекта публикации в Visual Studio с папкой

    Нажмите кнопку Готово, чтобы сохранить профиль публикации.

  3. Переключитесь в конфигурацию отладки.

    Выберите Изменить, чтобы изменить профиль, а затем выберите Настройки. Выберите конфигурацию Debug, затем выберите Удалить дополнительные файлы в месте назначения в разделе Параметры публикации файлов.

    снимок экрана: вкладка

    Заметка

    Если вы используете релизную сборку, то при публикации отладка в файле web.config будет отключена.

  4. Щелкните Опубликовать.

    Приложение публикует отладочную конфигурацию проекта в локальную папку. Ход выполнения отображается в окне вывода.

  5. Скопируйте каталог проекта ASP.NET с компьютера Visual Studio в локальный каталог, настроенный для приложения ASP.NET (в этом примере C:\Publish) на компьютере Windows Server. В этом руководстве предполагается, что вы копируете вручную, но вы можете использовать другие инструменты, такие как PowerShell, Xcopy или Robocopy.

    Осторожность

    Если необходимо внести изменения в код или перестроить, необходимо повторно опубликовать и повторить этот шаг. Исполняемый файл, скопированный на удаленный компьютер, должен точно соответствовать локальному источнику и символам. Если вы этого не сделаете, вы получите предупреждение cannot find or open the PDB file в Visual Studio при попытке отладки процесса.

  6. В Windows Server убедитесь, что приложение можно запустить правильно, открыв приложение в браузере.

    Если приложение не работает правильно, может возникнуть несоответствие между версией ASP.NET, установленной на сервере и на компьютере Visual Studio, или у вас может возникнуть проблема с конфигурацией IIS или веб-сайта. Выполните повторную проверку предыдущих шагов.

Скачивание и установка средств удаленного доступа на Windows Server

Скачайте версию удаленных средств, которые соответствуют версии Visual Studio.

На удаленном устройстве или сервере, на котором требуется выполнить отладку, а не на компьютере Visual Studio, скачайте и установите правильную версию удаленных средств из ссылок в следующей таблице.

  • Скачайте последнее обновление средств удаленного доступа для вашей версии Visual Studio. Более ранние версии удаленных средств несовместимы с более поздними версиями Visual Studio. (Например, если вы используете Visual Studio 2019, скачайте последнее обновление средств удаленного доступа для Visual Studio 2019. В этом сценарии не скачивайте средства удаленного доступа для Visual Studio 2022.)
  • Скачайте удаленные средства с той же архитектурой, что и компьютер, на котором вы устанавливаете их. Например, если вы хотите отлаживать приложения x86 на удаленном компьютере под управлением операционной системы x64, установите средства удаленного управления x64. Чтобы выполнить отладку приложений x86, ARM или x64 в операционной системе ARM64, установите удаленные средства ARM64.
Версия Ссылка Примечания
Visual Studio 2022 удаленные средства Совместима со всеми версиями Visual Studio 2022. Скачайте версию, соответствующую операционной системе устройства (x86, x64 (AMD64) или ARM64. В более старых версиях Windows Server см. Разблокируйте скачивание файла, чтобы получить помощь с загрузкой средств удаленного доступа.
Visual Studio 2019 удаленные инструменты Средства удаленного доступа для Visual Studio 2019 доступны в My.VisualStudio.com. При появлении запроса станьте участником бесплатной программы Visual Studio Dev Essentials или войдите с помощью учетной записи подписки Visual Studio. Скачайте версию, соответствующую операционной системе устройства (x86, x64 (AMD64) или ARM64. В более старых версиях Windows Server, см. Разблокировка скачивания файла для получения помощи по загрузке средств удаленного доступа.
Visual Studio 2017 удаленные инструменты Средства удаленного доступа для Visual Studio 2017 доступны в My.VisualStudio.com. При появлении запроса присоединитесь к бесплатной программе Visual Studio Dev Essentials или войдите, используя идентификатор подписки Visual Studio. Скачайте версию, соответствующую операционной системе устройства (x86, x64 (AMD64) или ARM64. В Windows Server см. Разблокировка скачивания файла для помощи в загрузке удалённых средств.
Visual Studio 2015 удаленные инструменты Средства удаленного доступа для Visual Studio 2015 доступны в My.VisualStudio.com. При появлении запроса присоединитесь к бесплатной программе Visual Studio Dev Essentials или войдите с использованием идентификатора подписки Visual Studio. В Windows Server см. разблокирование загрузки файла для помощи в загрузке удаленных средств.
Visual Studio 2013 удаленные инструменты Страница загрузки в документации по Visual Studio 2013
Visual Studio 2012 Удаленные инструменты Страница загрузки в документации по Visual Studio 2012
Версия Ссылка Примечания
Visual Studio 2019 удаленные инструменты Совместима со всеми версиями Visual Studio 2019. Скачайте версию, соответствующую операционной системе устройства (x86, x64 (AMD64) или ARM64. В Windows Server см. раздел "Разблокировка загрузки файла" для помощи с загрузкой удаленных инструментов. Для самой последней версии удаленных инструментов откройте документ для Visual Studio 2022.
Visual Studio 2017 Удаленные инструменты Совместима со всеми версиями Visual Studio 2017. Скачайте версию, соответствующую операционной системе устройства (x86, x64 (AMD64) или ARM64. В Windows Server см. разблокировать скачивание файла, чтобы скачать удаленные средства.
Visual Studio 2015 удаленные инструменты Средства удаленного доступа для Visual Studio 2015 доступны в My.VisualStudio.com. При появлении запроса присоединитесь к бесплатной программе Visual Studio Dev Essentials или войдите с помощью идентификатора подписки Visual Studio. В Windows Server см. разблокировка скачивания файлов, чтобы получить помощь с загрузкой удалённых инструментов.
Visual Studio 2013 дистанционных инструментов Страница загрузки в документации по Visual Studio 2013
Visual Studio 2012 Удаленные инструменты Страница загрузки в документации по Visual Studio 2012

Вы можете запустить удаленный отладчик, скопировав msvsmon.exe на удаленный компьютер, а не установив удаленные средства. Однако мастер настройки удаленного отладчика (rdbgwiz.exe) доступен только при установке удаленных средств. Если вы хотите запустить удаленный отладчик в качестве службы, может потребоваться использовать мастер настройки. Дополнительные сведения см. в разделе (необязательно) Настройка удаленного отладчика в качестве службы.

Заметка

  • Для отладки приложений Windows 10 или более поздних версий на устройствах ARM используйте ARM64, которая доступна с последней версией удаленных средств.
  • Чтобы выполнить отладку приложений Windows 10 на устройствах Windows RT, используйте ARM, который доступен только в скачиваемом пакете удаленных средств Visual Studio 2015.
  • Чтобы выполнить отладку приложений x64 на операционной системе ARM64, запустите x64 msvsmon.exe, установленный вместе с удалёнными средствами ARM64.

Настройка удаленного отладчика на Windows Server

  1. На удалённом компьютере найдите и запустите Удалённый отладчик из меню «Пуск».

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

    Если вы планируете подключиться к процессу, запущенному с правами администратора, или запущенному под другой учетной записью пользователя (например, IIS), щелкните правой кнопкой мыши приложение Удалённый отладчик и выберите Запустить от имени Администратора. Дополнительные сведения см. в статье Запуск удаленного отладчика в качестве администратора.

  2. При первом запуске удаленного отладчика (или перед его настройкой) появится мастер конфигурации удаленной отладки.

    В большинстве сценариев выбирайте Далее, пока не дойдете до страницы Настройка брандмауэра Windows мастера.

    скриншот конфигурации удаленного отладчика.

    снимок экрана конфигурации удаленного отладчика.

    Если API веб-служб Windows не установлен, что бывает только в Windows Server 2008 R2, нажмите кнопку Установить.

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

    Затем нажмите кнопку Готово, чтобы запустить удаленный отладчик.

    Затем выберите Настроить удаленную отладку, чтобы запустить удаленный отладчик.

  4. После завершения настройки появится окно удаленного отладчика.

    снимок экрана: окно удаленного отладчика

    снимок экрана: окно удаленного отладчика

    Теперь удаленный отладчик ожидает подключения. Используйте имя сервера и номер порта, показанные для задания конфигурации удаленного подключения в Visual Studio.

Чтобы остановить удаленный отладчик, выберите Файл>Выйти. Его можно перезапустить из меню "Пуск" или из командной строки:

<Remote debugger installation directory>\msvsmon.exe

Заметка

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

Сведения о запуске удаленного отладчика в качестве службы см. в статье Запуск удаленного отладчика в качестве службы.

Присоединение к приложению ASP.NET Core с компьютера Visual Studio

Начиная с Visual Studio 2022 версии 17.10 Preview 2 диалоговое окно "Присоединение к процессу" изменилось. Если вам нужны инструкции, соответствующие более старым диалоговым окнам, перейдите в представление Visual Studio 2019 (селектор версий в верхней левой части статьи).

  1. На компьютере Visual Studio откройте решение, которое вы пытаетесь отлаживать (MyASPApp, если вы выполняете все действия, описанные в этой статье.

  2. В Visual Studio выберите Отладка > Присоединиться к процессу (Ctrl + Alt + P).

    Совет

    В Visual Studio 2017 и более поздних версиях вы можете повторно подключиться к тому же процессу, к которому вы ранее подключились, с помощью команды меню Отладка > Повторное подключение к процессу... (Shift + Alt + P).

  3. Установите тип подключения на удаленный (Windows).

    Появится параметр целевого объекта подключения.

    Установите цель подключения на имя удаленного компьютера <> и нажмите ВВОД.

    Убедитесь, что Visual Studio добавляет необходимый порт к имени компьютера, которое отображается в формате: <имя удаленного компьютера>:порт

    В Visual Studio 2022 вы увидите <имя удаленного компьютера>:4026

    Требуется порт. Если номер порта не отображается, добавьте его вручную.

  1. На компьютере Visual Studio откройте решение, которое вы пытаетесь отлаживать (MyASPApp, если вы выполняете все действия, описанные в этой статье.

  2. В Visual Studio выберите Отладка > Подключиться к процессу (Ctrl + Alt + P).

    Совет

    В Visual Studio 2017 и более поздних версиях вы можете повторно подключиться к тому же процессу, к которому ранее подключились, используя Отладка > Повторно подключиться к процессу... (Shift + Alt + P).

  3. Задайте для поля квалификатора <имя удалённого компьютера> и нажмите клавишу ВВОД.

    Убедитесь, что Visual Studio добавляет необходимый порт к имени компьютера, который отображается в формате: <имя удаленного компьютера>:port

    В Visual Studio 2019 вы должны увидеть <имя удаленного компьютера>:4024

    Требуется порт. Если номер порта не отображается, добавьте его вручную.

  1. Выберите Обновить.

    В окне доступные процессы отображаются некоторые процессы.

    Если вы не видите никаких процессов, попробуйте использовать IP-адрес вместо имени удаленного компьютера (требуется порт). Чтобы получить IPv4-адрес, можно использовать ipconfig в командной строке.

    Если вы хотите использовать кнопку Найти, возможно, потребуется открыть исходящий порт UDP 3702 на сервере.

  2. Отметьте Показать процессы от всех пользователей.

  3. Введите первую букву имени процесса, чтобы быстро найти приложение.

    • Если вы используете модель размещения в процессе на IIS, выберите правильный процесс w3wp.exe. Начиная с .NET Core 3, этот процесс используется по умолчанию.

    • В противном случае выберите процесс dotnet.exe. (Это модель хостинга вне процесса.)

    Если у вас несколько процессов с w3wp.exe или dotnet.exe, проверьте столбец имени пользователя. В некоторых сценариях столбец Имя пользователя может отображать имя пула приложений, например IIS APPPOOL\DefaultAppPool. Если вы видите пул приложений, но он не уникален, создайте новый именованный пул для экземпляра приложения, который вы хотите отлаживать, чтобы его было проще найти в столбце имени пользователя.

    снимок экрана диалогового окна

    снимок экрана: диалоговое окно

  4. Выберите , подключите.

  5. Откройте веб-сайт удаленного компьютера. В браузере перейдите к http://<имени удаленного компьютера>.

    Вы увидите веб-страницу ASP.NET.

  6. В работающем приложении ASP.NET выберите ссылку на страницу политики конфиденциальности.

    Точка останова должна быть достигнута в Visual Studio.

    Если вы не можете подключиться или достичь точки останова, см. статью Устранение неполадок удаленной отладки.

Устранение неполадок в развертывании IIS

  • Если вы не можете подключиться к узлу с помощью имени узла, попробуйте использовать IP-адрес.
  • Убедитесь, что необходимые порты открыты на удаленном сервере.
  • Для ASP.NET Core необходимо убедиться, что для поля пула приложений для DefaultAppPool задано значение No Managed Code.
  • Убедитесь, что версия ASP.NET, используемая в приложении, совпадает с версией, установленной на сервере. Для приложения можно просмотреть и задать версию на странице свойств . Чтобы установить приложение на другую версию, ее необходимо установить.
  • Если приложение попыталось открыть, но появится предупреждение о сертификате, выберите доверять сайту. Если предупреждение уже закрыто, вы можете изменить профиль публикации, файл *.pubxml в проекте и добавить следующий элемент (только для тестирования): <AllowUntrustedCertificate>true</AllowUntrustedCertificate>
  • После развертывания запустите приложение в IIS, чтобы проверить правильное развертывание приложения.
  • Проверьте окно вывода в Visual Studio для сведений о состоянии и проверьте сообщения об ошибках.

Открытие необходимых портов в Windows Server

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

Заметка

На виртуальной машине Azure необходимо открыть порты через группу безопасности сети.

Обязательные порты:

  • 80. Требуется для IIS (HTTP).
  • UDP 3702: (необязательно) порт обнаружения позволяет использовать кнопку Найти при подключении к удаленному отладчику в Visual Studio.

Кроме того, эти порты уже должны быть открыты установкой ASP.NET:

  • 8172: (необязательно) Требуется для веб-развертывания для развертывания приложения из Visual Studio

Открытие порта

  1. Чтобы открыть порт на Windows Server, откройте меню "Пуск", найдите брандмауэр Защитника Windows или брандмауэр Windows с функцией расширенной безопасности.

    Для Брандмауэра Защитника Windowsвыберите дополнительные параметры.

  2. Затем выберите Правила для входящего трафика > Новое правило > Порт, а затем выберите Далее. (Для UDP 3702 выберите Правила исходящего трафика.)

  3. В разделе Определенные локальные портывведите номер порта, выберите Далее.

  4. Выберите Разрешить подключение, выберите Далее.

  5. Выберите один или несколько типов сети, чтобы задействовать их для порта, и выберите Далее.

    Тип, который вы выбираете, должен включать сеть, к которой подключен удаленный компьютер.

  6. Добавьте имя (например, IIS, Web Deployили msvsmon) для правила входящего трафика и выберите Готово.

    Вы должны увидеть новое правило в списке правил входящего или исходящего трафика.

    Дополнительные сведения о настройке брандмауэра Windows см. в статье Настройка брандмауэра Windows для удаленной отладки.

  7. Создайте дополнительные правила для других необходимых портов.