Partilhar via


Depurar remotamente ASP.NET Core no IIS usando uma VM do Azure a partir do Visual Studio

Este guia explica como instalar e configurar um aplicativo Visual Studio ASP.NET Core, implantá-lo no IIS usando uma VM do Azure e anexar o depurador remoto do Visual Studio.

Para cenários do IIS, o Linux não é suportado.

Para depurar o IIS numa máquina virtual do Azure, siga os passos neste artigo. Usando esse método, você pode usar uma configuração personalizada do IIS, mas as etapas de instalação e implantação são mais complicadas. Se você não precisar personalizar o IIS para seu cenário, poderá escolher métodos mais simples para hospedar e depurar o aplicativo em Serviço de Aplicativo do Azure.

Para uma VM do Azure, você deve implantar seu aplicativo do Visual Studio para o Azure e também precisa instalar manualmente a função do IIS e o depurador remoto, conforme mostrado na ilustração a seguir.

Diagrama mostrando a relação entre o Visual Studio, uma VM do Azure e um aplicativo ASP.NET. O IIS e o Depurador Remoto são representados com linhas sólidas.

Advertência

Certifique-se de excluir os recursos do Azure que você cria quando tiver concluído as etapas neste tutorial. Dessa forma, você pode evitar incorrer em cobranças desnecessárias.

Estes procedimentos foram testados nestas configurações de servidor:

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

Pré-requisitos

O Visual Studio 2019 ou versões posteriores é necessário para seguir as etapas mostradas neste artigo.

Requisitos de rede

Não há suporte para depuração entre dois computadores conectados por meio de um proxy. A depuração através de uma ligação de alta latência ou baixa largura de banda, como a Internet de acesso telefónico, ou através da Internet entre países/regiões não é recomendada e pode falhar ou ser inaceitavelmente lenta. Para obter uma lista completa de requisitos, consulte Requisitos.

Aplicativo já em execução no IIS na VM do Azure?

Este artigo inclui etapas sobre como configurar uma configuração básica do IIS no servidor Windows e implantar o aplicativo do Visual Studio. Essas etapas estão incluídas para garantir que o servidor tenha os componentes necessários instalados, que o aplicativo possa ser executado corretamente e que você esteja pronto para a depuração remota.

  • Se o seu aplicativo estiver sendo executado no IIS e você quiser apenas baixar o depurador remoto e iniciar a depuração, vá para Baixar e instalar as ferramentas remotas no Windows Server.

  • Se você quiser ajuda para garantir que seu aplicativo esteja configurado, implantado e executado corretamente no IIS para que você possa depurar, siga todas as etapas neste artigo.

    • Antes de começar, siga todas as etapas descritas em Criar uma máquina virtual do Windows, que inclui etapas para instalar o servidor Web do IIS.

    • Certifique-se de abrir a porta 80 no grupo de segurança Rede do Azure . Quando verificar se a porta 80 está aberta, abra também a porta correta para o depurador remoto (4026, 4024 ou 4022). Dessa forma, você não precisa abri-lo mais tarde. Se você estiver usando a Implantação da Web, abra também a porta 8172.

Criar o aplicativo ASP.NET Core no computador Visual Studio

  1. Crie um novo aplicativo Web ASP.NET Core.

    No Visual Studio, escolha Arquivo>para abrir a Janela de Início e, em seguida, escolha Criar um novo projeto. Na caixa de pesquisa, digite aplicativo Web, em seguida, escolha C# como o idioma, escolha ASP.NET Core Web Application (Model-View-Controller)e depois escolha Avançar. Na próxima tela, nomeie o projeto MyASPAppe, em seguida, escolha Avançar.

    Escolha a estrutura de destino recomendada ou .NET 8 e, em seguida, escolha Criar. A versão deve corresponder à versão instalada no servidor.

  2. Abra o arquivo HomeController.cs na pasta Controllers e defina um ponto de interrupção na instrução return View; no método Privacy.

    Em modelos mais antigos, abra o arquivo Privacy.cshtml.cs e defina um ponto de interrupção no método OnGet.

Atualizar as configurações de segurança do navegador no Windows Server

Se estiver a utilizar uma versão mais antiga do Windows Server, poderá ter de adicionar alguns domínios como sites fidedignos para lhe permitir transferir alguns dos componentes do servidor Web. Adicione os sites confiáveis acessando Opções da Internet > Segurança > Sites Confiáveis > Sites. Adicione os seguintes domínios.

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

Ao baixar o software, você pode receber solicitações para conceder permissão para carregar vários scripts e recursos de sites. Alguns desses recursos não são necessários, mas para simplificar o processo, selecione Adicionar quando solicitado.

Instalar o ASP.NET Core no Windows Server

  1. Instale o .NET Core Hosting Bundle no sistema de hospedagem. O pacote instala o .NET Core Runtime, o .NET Core Library e o ASP.NET Core Module. Para obter instruções mais detalhadas, consulte Publicar no IIS.

    Para o pacote de hospedagem .NET Core atual, instale o ASP.NET Core Hosting Bundle.

    Observação

    Se você instalou o IIS anteriormente, o módulo ASP.NET Core IIS será instalado com o ASP.NET Core. Caso contrário, instale o módulo ASP.NET Core IIS manualmente.

    Para o .NET Core 2, instale o .NET Core Windows Server Hosting.

    Observação

    Se o sistema não tiver uma conexão com a Internet, obtenha e instale o Microsoft Visual C++ 2015 Redistributable antes de instalar o pacote de hospedagem do Windows Server .NET Core.

  2. Reinicie o sistema (ou execute net stop was /y seguido por net start w3svc a partir de um prompt de comando para aplicar uma alteração ao PATH do sistema).

Escolha uma opção de implantação

Se precisar de ajuda para implantar o aplicativo no IIS, considere estas opções:

  • Implante criando um arquivo de configurações de publicação no IIS e importando as configurações no Visual Studio. Em alguns cenários, essa abordagem é uma maneira rápida de implantar seu aplicativo. Quando você cria o arquivo de configurações de publicação, as permissões são configuradas automaticamente no IIS.

  • Implante publicando em uma pasta local e copiando a saída por um método preferencial para uma pasta de aplicativo preparada no IIS.

(Opcional) Implantar usando um arquivo de configurações de publicação

Você pode usar essa opção para criar um arquivo de configurações de publicação e importá-lo para o Visual Studio.

Observação

Este método de implantação utiliza o Web Deploy, o qual é necessário que esteja instalado no servidor. Se desejar configurar a Implantação da Web manualmente em vez de importar as configurações, você poderá instalar a Implantação da Web 3.6 em vez da Implantação da Web 3.6 para Servidores de Hospedagem. No entanto, se configurares o Web Deploy manualmente, precisarás certificar-te de que uma pasta de aplicação no servidor esteja configurada com os valores e permissões corretos (consulta Configurar site ASP.NET).

Configurar o site ASP.NET Core

  1. No Gerenciador do IIS, no painel esquerdo, em Conexões , selecione Pools de Aplicativos. Abra DefaultAppPool e defina a versão .NET CLR como No Managed Code. Isso é necessário para ASP.NET Core. O site padrão usa o DefaultAppPool.

  2. Pare e reinicie o DefaultAppPool.

Instalar e configurar o Web Deploy no Windows Server

O Web Deploy fornece recursos adicionais de configuração que permitem a criação do ficheiro de definições de publicação a partir da interface do utilizador.

Observação

O Web Platform Installer chegou ao fim da vida útil em 7/1/22. Para obter mais informações, consulte Web Platform Installer - Fim do suporte e encerramento do feed de produto/aplicativo. Você pode instalar diretamente o Web Deploy 4.0 para criar o arquivo de configurações de publicação.

  1. Se você ainda não instalou Ferramentas e Scripts de Gerenciamento do IIS, instale-o agora.

    Vá para Selecionar funções de servidor>Servidor Web (IIS)>Ferramentas de Gerenciamentoe, em seguida, selecione a função Scripts e Ferramentas de Gerenciamento do IIS, clique em Avançare instale a função.

    instalar scripts e ferramentas de gerenciamento do IIS

    Os scripts e ferramentas são necessários para permitir a geração do arquivo de configurações de publicação.

    Certifique-se também de instalar o Serviço de Gerenciamento e o Console de Gerenciamento do IIS (eles podem já estar instalados).

  2. No Windows Server, baixar o Web Deploy 4.0.

  3. Execute o programa de instalação do Web Deploy e certifique-se de selecionar instalação completa em vez de uma instalação típica.

    Com uma instalação completa, você obtém os componentes necessários para gerar um arquivo de configurações de publicação. (Se escolher Custom, poderá ver a lista de componentes, conforme mostrado na ilustração a seguir.)

    Captura de tela mostrando os componentes do Web Deploy 4.0

  4. (Opcional) Verifique se a Implantação da Web está a ser executada corretamente abrindo Painel de Controlo > Sistema e Segurança > Ferramentas Administrativas > Serviçose certifique-se de que:

    • O Serviço do Agente de Implantação da Web está em execução (o nome do serviço é diferente em versões mais antigas).

    • O Serviço de Gestão da Web está em execução.

    Se um dos serviços do agente não estiver em execução, reinicie o Web Deployment Agent Service.

    Se o Serviço do Web Deployment Agent não estiver presente, vá para Painel de Controlo > Programas > Desinstalar um Programa, localize Microsoft Web Deploy <versão:>. Escolha Alterar a instalação e certifique-se de escolher que será instalado no disco rígido local para os componentes do Web Deploy. Concluir as etapas de instalação de alterações.

Criar o arquivo de configurações de publicação no IIS no Windows Server

  1. Feche e reabra o Console de Gerenciamento do IIS para mostrar opções de configuração atualizadas na interface do usuário.

  2. No IIS, clique com o botão direito do mouse no Site Padrão, escolha Publicar>Configurar Publicação de Web Deploy.

    Configurar a configuração do Web Deploy,

    Se não vir o menu Implantar, consulte a seção anterior para verificar se o Web Deploy está em execução.

  3. Na caixa de diálogo Configurar Publicação de Implantação da Web, verifique as configurações.

  4. Clique em Configuração.

    No painel Resultados, os resultados indicam que os direitos de acesso são concedidos ao utilizador especificado e que um arquivo com a extensão .publishsettings foi gerado no local indicado na caixa de diálogo.

    <?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>
    

    Dependendo da configuração do Windows Server e do IIS, você verá valores diferentes no arquivo XML. Aqui estão alguns detalhes sobre os valores que você vê:

    • O arquivo msdeploy.axd referenciado no atributo publishUrl é um arquivo manipulador HTTP gerado dinamicamente para Web Deploy. (Para fins de teste, http://myhostname:8172 geralmente funciona também.)

    • A porta publishUrl é definida como porta 8172, que é o padrão para Web Deploy.

    • A porta destinationAppUrl é definida como porta 80, que é o padrão para o IIS.

    • Se, em etapas posteriores, você não conseguir se conectar ao host remoto do Visual Studio usando o nome do host, teste o endereço IP do servidor no lugar do nome do host.

      Observação

      Se você estiver publicando no IIS em execução em uma VM do Azure, deverá abrir uma porta de entrada para Implantação da Web e IIS no grupo Segurança de Rede. Para obter informações detalhadas, consulte Abrir portas para uma máquina virtual.

  5. Copie esse arquivo para o computador onde você está executando o Visual Studio.

Importar as configurações de publicação no Visual Studio e implantar

  1. No computador onde você tem o projeto ASP.NET aberto no Visual Studio, clique com o botão direito do mouse no projeto no Gerenciador de Soluções e escolha Publicar.

    Se você configurou anteriormente quaisquer perfis de publicação, o painel Publicar será exibido. Clique Novo perfil ou Criar novo perfil.

  2. Selecione a opção para importar um perfil.

    Na caixa de diálogo Publicar, clique em Importar Perfil.

    Escolha Publicar

  3. Navegue até o local do arquivo de configurações de publicação que você criou na seção anterior.

  4. Na caixa de diálogo Importar Arquivo de Configurações de Publicação, navegue até o perfil que criou na seção anterior e clique em Abrir.

    Clique Concluir para guardar o perfil de publicação e, em seguida, clique em Publicar.

    O Visual Studio inicia o processo de implantação e a janela Saída mostra o progresso e os resultados.

    Se você receber algum erro de implantação, clique em Mais Ações>Editar para editar as configurações. Modifique as configurações e clique em Validar para testar novas configurações. Se o nome do host não for encontrado, tente o endereço IP em vez do nome do host nos campos Server e URL de destino.

    Configurações de edição na ferramenta Publicar

Observação

Se você reiniciar uma VM do Azure, o endereço IP poderá ser alterado.

Depois que o aplicativo for implantado com êxito, ele deve ser iniciado automaticamente.

  • Se o aplicativo não iniciar após a implantação, inicie o aplicativo no IIS para verificar se ele é executado corretamente.
  • Para ASP.NET Core, verifique se o campo pool de aplicações do DefaultAppPool está definido como Sem código gerido.

Quando estiver pronto, mude para uma configuração de depuração.

Importante

Se tu optares por depurar uma configuração Release, desativas a depuração no arquivo web.config quando publicares.

  1. Selecione Mais Opções>Editar para editar o perfil e, em seguida, selecione Configurações.
  2. Selecione Salvar e publique novamente o aplicativo.
  3. Selecione uma configuração de Depurar e, em seguida, selecione Remover arquivos adicionais no destino nas opções de Publicação de Arquivos.
  1. Selecione Editar para editar o perfil e, em seguida, selecione Configurações.
  2. Selecione Salvar e publique novamente o aplicativo.
  3. Selecione uma configuração de Depuração e, em seguida, selecione Remover arquivos adicionais no destino nas opções de Publicação de Arquivos.

Advertência

Usar credenciais de nome de usuário e senha (autenticação básica) não é o método mais seguro de autenticação. Sempre que possível, utilize métodos alternativos. Por exemplo, considere publicar em um pacote do Visual Studio e, em seguida, use WebDeploy.exe de uma linha de comando para implantar o pacote. Com este método, pode usar o Gestor do IIS para configurar utilizadores autorizados do Windows que podem publicar no servidor web e executar WebDeploy.exe sob essa conta de utilizador do Windows. Consulte Instalando e configurando a implantação da Web no IIS 8.0 ou posterior. Se você usar credenciais de senha, certifique-se de usar uma senha forte e proteja a senha de ser vazada ou compartilhada.

(Opcional) Implantar publicando em uma pasta local

Você pode usar essa opção para implantar seu aplicativo se quiser copiar o aplicativo para o IIS usando PowerShell, RoboCopy ou se quiser copiar manualmente os arquivos.

Configurar o site ASP.NET Core no computador Windows Server

Se estiver a importar definições de publicação, pode ignorar esta secção.

  1. Abra o Gestor dos Serviços de Informações da Internet (IIS) e vá para Sites.

  2. Clique com o botão direito do mouse no nó Site Padrão e selecione Adicionar Aplicação.

  3. Defina o campo Alias para MyASPApp e o campo Pool de Aplicações para No Managed Code. Defina a Caminho físico como C:\Publish (onde você implantará posteriormente o projeto ASP.NET Core).

  4. Com o site selecionado no Gerenciador do IIS, escolha Editar Permissõese verifique se IUSR, IIS_IUSRS ou o usuário configurado para o Pool de Aplicativos é um usuário autorizado com direitos de Leitura & Execução.

    Se você não vir um desses usuários com acesso, siga as etapas para adicionar IUSR como um usuário com direitos de Leitura & Execução.

Importante

Para obter informações de segurança relacionadas às contas internas, consulte Noções básicas sobre Built-In contas de usuário e grupo no IIS 7.

(Opcional) Publicar e implantar o aplicativo publicando em uma pasta local do Visual Studio

Se não estiveres a usar o Web Deploy, deves publicar e implantar a aplicação usando o sistema de arquivos ou outras ferramentas. Você pode começar criando um pacote usando o sistema de arquivos e, em seguida, implantar o pacote manualmente ou usar outras ferramentas como PowerShell, Robocopy ou XCopy. Nesta seção, assumimos que você está copiando manualmente o pacote se não estiver usando o Web Deploy.

  1. No Explorador de Soluções, clique com o botão direito do rato no nó do projeto e selecione Publicar (para Web Forms, Publicar Aplicação Web).

    Se você configurou anteriormente quaisquer perfis de publicação, o painel Publicar será exibido. Clique Novo perfil.

  2. Na caixa de diálogo Publicar, selecione Pasta, clique em Procurare crie uma nova pasta C:\Publish.

    Captura de tela da caixa de diálogo Escolher um destino de publicação no Visual Studio com a pasta 'C:\Publicar' selecionada como o destino de publicação.

    Clique Concluir para guardar o perfil de publicação.

    Captura de tela da caixa de diálogo Escolher um destino de publicação no Visual Studio com a pasta 'C:\Publicar' selecionada como o destino de publicação.

    Clique Concluir para salvar o perfil de publicação.

  3. Alterne para uma configuração de depuração.

    Escolha Editar para editar o perfil e, em seguida, escolha Configurações. Escolha uma configuração de Depuração e, em seguida, escolha Remover arquivos adicionais no destino nas opções de Publicação de Arquivo.

    Captura de ecrã do separador Definições na caixa de diálogo Publicar. A configuração é definida como Depurar e o botão Publicar é selecionado.

    Observação

    Se utilizar uma compilação de versão, desativa a depuração no arquivo web.config ao publicar.

  4. Clique Publicar.

    A aplicação publica uma configuração Debug do projeto na pasta local. O progresso é exibido na janela de Output.

  5. Copie o diretório ASP.NET do projeto do computador Visual Studio para o diretório local configurado para o aplicativo ASP.NET (neste exemplo, C:\Publish) no computador Windows Server. Neste tutorial, assumimos que você está copiando manualmente, mas pode usar outras ferramentas como PowerShell, Xcopy ou Robocopy.

    Atenção

    Se precisar fazer alterações no código ou reconstruir, publique novamente e repita esta etapa. O executável copiado para a máquina remota deve corresponder exatamente à origem e aos símbolos locais. Se você não fizer isso, você receberá um aviso de cannot find or open the PDB file no Visual Studio quando você tentar depurar o processo.

  6. No Windows Server, verifique se você pode executar o aplicativo corretamente abrindo o aplicativo em seu navegador.

    Se o aplicativo não for executado corretamente, pode haver uma incompatibilidade entre a versão do ASP.NET instalada no servidor e na máquina do Visual Studio ou você pode ter um problema com a configuração do IIS ou do site. Verifique novamente as etapas anteriores.

Baixe e instale as ferramentas remotas no Windows Server

Baixe a versão das ferramentas remotas que corresponde à sua versão do Visual Studio.

No dispositivo remoto ou servidor em que você deseja depurar, em vez da máquina do Visual Studio, baixe e instale a versão correta das ferramentas remotas a partir dos links na tabela a seguir.

  • Baixe a atualização mais recente das ferramentas remotas para sua versão do Visual Studio. Versões anteriores de ferramentas remotas não são compatíveis com versões posteriores do Visual Studio. (Por exemplo, se você estiver usando o Visual Studio 2019, baixe a atualização mais recente das ferramentas remotas para o Visual Studio 2019. Nesse cenário, não baixe as ferramentas remotas para o Visual Studio 2022.)
  • Transfira as ferramentas remotas com a mesma arquitetura da máquina em que está a instalá-las. Por exemplo, se você quiser depurar aplicativos x86 em um computador remoto executando um sistema operacional x64, instale as ferramentas remotas x64. Para depurar aplicativos x86, ARM ou x64 em um sistema operacional ARM64, instale as ferramentas remotas ARM64.
Versão Ligação Observações
Visual Studio 2022 Ferramentas remotas Compatível com todas as versões do Visual Studio 2022. Descarregue a versão correspondente ao sistema operativo do seu dispositivo (x86, x64 (AMD64) ou ARM64). Em versões mais antigas do Windows Server, consulte Desbloquear o download do arquivo para obter ajuda com o download das ferramentas remotas.
Visual Studio 2019 Ferramentas remotas Ferramentas remotas para Visual Studio 2019 estão disponíveis em My.VisualStudio.com. Se solicitado, ingresse no programa gratuito Visual Studio Dev Essentials ou entre com sua ID de assinatura do Visual Studio. Descarregue a versão correspondente ao sistema operativo do dispositivo (x86, x64 (AMD64) ou ARM64). Em versões mais antigas do Windows Server, consulte Desbloquear o download do arquivo para obter ajuda com o download das ferramentas remotas.
Visual Studio 2017 Ferramentas remotas Ferramentas remotas para Visual Studio 2017 estão disponíveis em My.VisualStudio.com. Se solicitado, ingresse no programa gratuito Visual Studio Dev Essentials ou entre com sua ID de assinatura do Visual Studio. Transfira a versão correspondente ao sistema operativo do seu dispositivo (x86, x64 (AMD64) ou ARM64). No Windows Server, consulte Desbloquear o download do ficheiro para obter ajuda com o download das ferramentas remotas.
Visual Studio 2015 Ferramentas remotas Ferramentas remotas para Visual Studio 2015 estão disponíveis em My.VisualStudio.com. Se solicitado, ingresse no programa gratuito Visual Studio Dev Essentials ou entre com sua ID de assinatura do Visual Studio. No Windows Server, consulte Desbloquear o download do ficheiro para obter ajuda com o download das ferramentas remotas.
Visual Studio 2013 Ferramentas remotas Página de download na documentação do Visual Studio 2013
Visual Studio 2012 Ferramentas remotas Página de download na documentação do Visual Studio 2012
Versão Ligação Observações
Visual Studio 2019 Ferramentas remotas Compatível com todas as versões do Visual Studio 2019. Faça o download da versão que corresponde ao sistema operativo do seu dispositivo (x86, x64 (AMD64) ou ARM64). No Windows Server, consulte para Desbloquear o download de arquivo para obter ajuda com o download das ferramentas remotas. Para obter a versão mais recente das ferramentas remotas, abra o documento Visual Studio 2022.
Visual Studio 2017 Ferramentas remotas Compatível com todas as versões do Visual Studio 2017. Transfira a versão correspondente ao sistema operativo do seu dispositivo (x86, x64 (AMD64) ou ARM64). No Windows Server, consulte Desbloquear o download de ficheiros para obter ajuda com o download das ferramentas remotas.
Visual Studio 2015 Ferramentas remotas Ferramentas remotas para Visual Studio 2015 estão disponíveis em My.VisualStudio.com. Se solicitado, ingresse no programa gratuito Visual Studio Dev Essentials ou entre com sua ID de assinatura do Visual Studio. Na Windows Server, consulte Desbloquear o download do ficheiro para obter ajuda com o download das ferramentas remotas.
Visual Studio 2013 Ferramentas remotas Página de download na documentação do Visual Studio 2013
Visual Studio 2012 Ferramentas remotas Página de download na documentação do Visual Studio 2012

Você pode executar o depurador remoto copiando msvsmon.exe para o computador remoto, em vez de instalar as ferramentas remotas. No entanto, o Assistente de Configuração do Depurador Remoto (rdbgwiz.exe) está disponível somente quando você instala as ferramentas remotas. Talvez seja necessário usar o assistente para configuração se quiser executar o depurador remoto como um serviço. Para obter mais informações, consulte (Opcional) Configurar o depurador remoto como um serviço.

Observação

  • Para depurar aplicativos do Windows 10 ou posteriores em dispositivos ARM, use o ARM64, que está disponível com a versão mais recente das ferramentas remotas.
  • Para depurar aplicativos do Windows 10 em dispositivos Windows RT, use ARM, que está disponível somente no download de ferramentas remotas do Visual Studio 2015.
  • Para depurar aplicações x64 num sistema operativo ARM64, execute o msvsmon.exe x64 que está instalado com as ferramentas remotas ARM64.

Configurar o depurador remoto no Windows Server

  1. No computador remoto, localize e inicie o Depurador Remoto do menu Iniciar.

    Se não tiver permissões administrativas no computador remoto, clique com o botão direito do rato na aplicação Depurador Remoto e selecione Executar como administrador. Caso contrário, basta iniciá-lo normalmente.

    Se estiveres a planear ligar a um processo que está a ser executado como administrador ou que está a ser executado numa conta de utilizador diferente (como o IIS), clica com o botão direito do rato no aplicativo Depurador Remoto e seleciona Executar como administrador. Para obter mais informações, consulte Executar o Depurador Remoto como Administrador.

  2. Na primeira vez que você iniciar o depurador remoto (ou antes de configurá-lo), o assistente de Configuração de Depuração Remota será exibido.

    Na maioria dos cenários, escolha Avançar até chegar à página do assistente Configurar o Firewall do Windows.

    Captura de tela da configuração do Depurador Remoto.

    Captura de ecrã da configuração do depurador remoto.

    Se a API do Windows Web Services não estiver instalada, o que acontece apenas no Windows Server 2008 R2, selecione o botão Instalar.

  3. Selecione pelo menos um tipo de rede no qual você deseja usar as ferramentas remotas. Se os computadores estiverem conectados através de um domínio, você deverá escolher o primeiro item. Se os computadores estiverem conectados por meio de um grupo de trabalho ou grupo doméstico, escolha o segundo ou terceiro item conforme apropriado.

    Em seguida, selecione Concluir para iniciar o depurador remoto.

    Em seguida, selecione Configurar depuração remota para iniciar o depurador remoto.

  4. Quando a configuração estiver concluída, a janela Remote Debugger será exibida.

    Captura de tela da janela do depurador remoto

    Captura de tela da Janela do Depurador Remoto

    O depurador remoto está agora à espera de uma ligação. Use o nome do servidor e o número da porta mostrados para definir a configuração de conexão remota no Visual Studio.

Para parar o depurador remoto, selecione Arquivo>Fechar. Você pode reiniciá-lo a partir do menu Iniciar ou da linha de comando:

<Remote debugger installation directory>\msvsmon.exe

Observação

Se você precisar adicionar permissões para usuários adicionais, alterar o modo de autenticação ou o número da porta para o depurador remoto, consulte Configurar o depurador remoto.

Ligue-se à aplicação ASP.NET Core a partir do computador com o Visual Studio

A partir do Visual Studio 2022 versão 17.10 Preview 2, a caixa de diálogo Anexar ao Processo foi alterada. Se você precisar de instruções que correspondam à caixa de diálogo mais antiga, alterne para o modo de exibição Visual Studio 2019 (seletor de versão no canto superior esquerdo no artigo).

  1. No computador do Visual Studio, abra a solução que você está tentando depurar (MyASPApp se você estiver seguindo todas as etapas neste artigo).

  2. No Visual Studio, selecione Depurar > Anexar ao Processo (Ctrl + Alt + P).

    Dica

    No Visual Studio 2017 e versões posteriores, você pode reanexar ao mesmo processo anexado anteriormente usando Debug > Reattach to Process... (Shift + Alt + P).

  3. Defina o Tipo de Conexão como Remoto (Windows).

    A opção Connection Target é exibida.

    Defina o Destino da Conexão para o nome do computador remoto <> e pressione Enter .

    Verifique se o Visual Studio adiciona a porta necessária ao nome do computador, que aparece no formato: <nome do computador remoto>:port

    No Visual Studio 2022, você deve ver <nome do computador remoto>:4026

    A porta de rede é necessária. Se não vir o número da porta, adicione-o manualmente.

  1. No computador do Visual Studio, abra a solução que você está tentando depurar (MyASPApp se você estiver seguindo todas as etapas neste artigo).

  2. No Visual Studio, selecione Depurar > Anexar ao Processo (Ctrl + Alt + P).

    Dica

    No Visual Studio 2017 e versões posteriores, você pode reanexar ao mesmo processo anexado anteriormente usando Debug > Reattach to Process... (Shift + Alt + P).

  3. Defina o campo Qualificador como <nome do computador remoto> e pressione Enter.

    Verifique se o Visual Studio adiciona a porta necessária ao nome do computador, que aparece no formato: <nome do computador remoto>:porta

    No Visual Studio 2019, você deve ver <nome do computador remoto>:4024

    A porta é necessária. Se não vir o número da porta, adicione-o manualmente.

  1. Selecione Atualizar.

    Você verá alguns processos aparecerem na janela Processos Disponíveis.

    Se você não vir nenhum processo, tente usar o endereço IP em vez do nome do computador remoto (a porta é necessária). Você pode usar ipconfig em uma linha de comando para obter o endereço IPv4.

    Se você quiser usar o botão Localizar, talvez seja necessário porta UDP de saída 3702 no servidor.

  2. Marque Mostrar processos de todos os utilizadores.

  3. Digite a primeira letra do nome do processo para localizar rapidamente seu aplicativo.

    • Se você estiver usando o modelo de hospedagem em processo no IIS, selecione o processo de w3wp.exe correto. A partir do .NET Core 3, esse processo é o padrão.

    • Caso contrário, selecione o dotnet.exe processo. (Este é o modelo de hospedagem fora do processo.)

    Se tiveres vários processos mostrando w3wp.exe ou dotnet.exe, verifica a coluna Nome de Utilizador. Em alguns cenários, a coluna Nome de Utilizador exibe o nome do pool da aplicação, como IIS APPPOOL\DefaultAppPool. Se vires o Pool de Aplicações, mas ele não for exclusivo, cria um novo Pool de Aplicações nomeado para a instância da aplicação que desejas depurar e depois podes encontrá-lo facilmente na coluna Nome de Utilizador.

    Captura de ecrã da caixa de diálogo Anexar ao processo.

    Captura de tela da caixa de diálogo Anexar ao processo.

  4. Selecione Anexar.

  5. Abra o site do computador remoto. Em um navegador, vá para http://<nome do computador remoto>.

    Deverá ver a página Web ASP.NET.

  6. No aplicativo ASP.NET em execução, selecione o link para a página Privacy.

    O ponto de interrupção deve ser atingido no Visual Studio.

    Se não conseguir anexar ou atingir o ponto de interrupção, consulte Resolução de problemas de depuração remota.

Solução de problemas de implantação do IIS

  • Se você não conseguir se conectar ao host usando o nome do host, tente o endereço IP.
  • Verifique se as portas necessárias estão abertas no servidor remoto.
  • Para o ASP.NET Core, é necessário certificar-se de que o campo do pool de aplicações para o DefaultAppPool está definido como No Managed Code.
  • Verifique se a versão do ASP.NET usado em seu aplicativo é a mesma que você instalou no servidor. Para a sua aplicação, pode exibir e definir a versão na página de Propriedades do . Para definir o aplicativo para uma versão diferente, essa versão deve ser instalada.
  • Se o aplicativo tentou abrir, mas você vê um aviso de certificado, escolha confiar no site. Se você já fechou o aviso, você pode editar o perfil de publicação, um arquivo *.pubxml, em seu projeto e adicionar o seguinte elemento (apenas para teste): <AllowUntrustedCertificate>true</AllowUntrustedCertificate>
  • Depois de implantado, inicie o aplicativo no IIS para testar se ele foi implantado corretamente.
  • Verifique a janela Saída no Visual Studio para obter informações de status e verifique suas mensagens de erro.

Abrir portas necessárias no Windows Server

Na maioria das configurações, as portas necessárias são abertas pela instalação do ASP.NET e do depurador remoto. No entanto, se você estiver solucionando problemas de implantação e o aplicativo estiver hospedado atrás de um firewall, talvez seja necessário verificar se as portas corretas estão abertas.

Em uma VM do Azure, você deve abrir portas por meio de:

Portas necessárias:

  • 80 - Necessário para o IIS
  • UDP 3702 - (Opcional) A porta de descoberta permite o uso do botão Localizar ao ligar ao depurador remoto no Visual Studio. Esta deve ser uma porta de saída (regra de saída).

Além disso, essas portas já devem ser abertas pela instalação ASP.NET Core:

  • 8172 - (Opcional) Necessário para o Web Deploy implantar o aplicativo a partir do Visual Studio