Depurar remotamente o ASP.NET Core em um computador IIS remoto no Visual Studio
Para depurar um aplicativo ASP.NET Core que foi implantado no IIS, instale e execute as ferramentas remotas no computador em que você implantou seu aplicativo e anexe ao aplicativo em execução do Visual Studio.
componentes do depurador remoto
Este guia explica como configurar um projeto ASP.NET Core no Visual Studio, implantá-lo no IIS e conectar o depurador remoto do Visual Studio. Para depurar remotamente o ASP.NET 4.8, consulte Depuração Remota do ASP.NET em um Computador IIS. Você também pode implantar e depurar no IIS usando o Azure. Para o Serviço de Aplicativo do Azure, confira Depuração remota do ASP.NET Core no Azure ou, para o Visual Studio Enterprise, use o Depurador de Instantâneos (.NET 4.6.1 exigido).
Pré-requisitos
O Visual Studio 2019 ou uma versão posterior é necessário para seguir as etapas mostradas neste artigo.
Esses procedimentos foram testados nessas configurações de servidor:
- Windows Server 2022 e IIS 10
- Windows Server 2019 e IIS 10
- Windows Server 2016 e IIS 10
Requisitos de rede
Não há suporte para a depuração entre dois computadores conectados por meio de um proxy. A depuração por uma conexão de alta latência ou baixa largura de banda, como Internet discada ou pela Internet entre países/regiões, não é recomendada e pode falhar ou ser inaceitavelmente lenta. Para obter uma lista completa de requisitos, consulte Requirements.
O aplicativo já está em execução no IIS?
Este artigo inclui etapas para configurar uma configuração básica do IIS no servidor Windows e implantar o aplicativo no Visual Studio. Essas etapas são incluídas para garantir que o servidor tenha componentes necessários instalados, que o aplicativo possa ser executado corretamente e que você esteja pronto para depuração remota.
Se o aplicativo estiver em execução no IIS e você quiser apenas baixar o depurador remoto e iniciar a depuração, acesse Baixar e instalar as ferramentas remotas no Windows Server.
Se você quiser ajuda para garantir que seu aplicativo esteja configurado, implantado e em execução corretamente no IIS para que possa depurar, siga todas as etapas neste artigo.
Criar o aplicativo ASP.NET Core no computador do Visual Studio
Crie um novo aplicativo Web ASP.NET Core.
No Visual Studio, escolha Arquivo>Janela de início para abrir a Janela de início e, em seguida, escolha Criar um novo projeto. Na caixa de pesquisa, digite aplicativo Web, escolha C# como o idioma e escolha Aplicativo Web ASP.NET Core (Modelo-View-Controller)e escolha Avançar. Na próxima tela, nomeie o projeto MyASPAppe, em seguida, escolha Próximo.
Escolha a estrutura de destino recomendada ou o .NET 8 e escolha Criar. A versão deve corresponder à versão instalada no servidor.
Abra o arquivo HomeController.cs na pasta Controladores e defina um ponto de interrupção na instrução
return View;
no métodoPrivacy
.Em modelos mais antigos, abra o arquivo Privacy.cshtml.cs e defina um ponto de interrupção no método
OnGet
.
Instalar e configurar o IIS no Windows Server
Essas etapas mostram apenas uma configuração básica do IIS. Para obter informações mais detalhadas ou instalar em um computador desktop do Windows, consulte Publicando no IIS ou IIS 8.0 usando ASP.NET 3.5 e ASP.NET 4.5.
Para sistemas operacionais do Windows Server, use o assistente Adicionar Funções e Recursos pelo link Gerenciar ou do link Painel no Gerenciador do Servidor. Na etapa Funções de Servidor, marque a caixa de Servidor Web (IIS).
(Windows Server 2022) Na caixa de diálogo exibida, escolha Adicionar Recursos para adicionar o Console de Gerenciamento do IIS.
Na etapa Serviços de função, selecione os serviços de função do IIS desejados ou aceite os serviços de função padrão fornecidos. Se você quiser habilitar a implantação usando as configurações de publicação e a Implantação da Web, verifique se os seguintes recursos estão selecionados:
- Scripts e Ferramentas de Gerenciamento do IIS
- Management Service
- console de gerenciamento do IIS
Prossiga pelas etapas de confirmação para instalar a função e os serviços do servidor Web. Uma reinicialização do servidor/IIS não é necessária após a instalação da função do Servidor Web (IIS).
Atualizar as configurações de segurança do navegador no Windows Server
Se você estiver usando uma versão mais antiga do Windows Server, talvez seja necessário adicionar alguns domínios como sites confiáveis para permitir que você baixe alguns dos componentes do servidor Web. Adicione os sites confiáveis acessando Opções da Internet > Segurança > Sites confiáveis > Sites. Adicione os domínios a seguir.
- 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 do site. 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
Instale o Pacote de Hospedagem do .NET Core no sistema de hospedagem. O pacote instala o Runtime do .NET Core, a Biblioteca do .NET Core e o módulo ASP.NET Core. Para obter instruções mais detalhadas, veja Publicar no IIS.
Para o pacote atual de hospedagem do .NET Core, instale o Pacote de Hospedagem do ASP.NET Core.
Nota
Se você instalou anteriormente o IIS, o módulo IIS do ASP.NET Core 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 a Hospedagem do Windows Server do .NET Core.
Nota
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 .NET Core para Windows Server.
Reinicie o sistema (ou execute net stop was /y seguido por net start w3svc em um prompt de comando para reconhecer uma alteração no PATH do sistema).
Escolher uma opção de implantação
Se você 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 é 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.
Nota
Se você quiser configurar o Web Deploy manualmente em vez de importar as configurações de publicação, precisará assegurar que uma pasta de aplicativo no servidor esteja configurada com os valores e permissões corretos (consulte Configurar site ASP.NET).
Configurar o site do ASP.NET Core
No Gerenciador do IIS, no painel esquerdo em Conexões, selecione Pools de Aplicativos. Abra DefaultAppPool e defina a Versão do CLR do .NET como Sem Código Gerenciado. Isso é necessário para ASP.NET Core. O Site Padrão usa o DefaultAppPool.
Pare e reinicie o DefaultAppPool.
Instalar e configurar o Web Deploy no Windows Server
Web Deploy fornece recursos de configuração adicionais que permitem a criação do arquivo de configurações de publicação na interface do usuário.
Nota
O Web Platform Installer não é mais fabricado desde 01/07/22. Para obter mais informações, confira Web Platform Installer – Fim do suporte e encerramento do produto/feed de aplicativo. Você pode instalar o Web Deploy 4.0 diretamente para criar o arquivo de configurações de publicação.
Se você ainda não instalou Scripts e Ferramentas de Gerenciamento do IIS , instale-o agora.
Acesse Selecionar funções de servidor>Servidor Web (IIS)>Ferramentas de Gerenciamento e, em seguida, selecione a função Scripts de gerenciamento e ferramentas do IIS, clique em Avançar e, em seguida, instale a função.
Os scripts e as ferramentas são necessários para habilitar a geração do arquivo de configurações de publicação.
Certifique-se de instalar também o Serviço de Gerenciamento e o Console de Gerenciamento do IIS (eles podem já estar instalados).
No Windows Server, baixe a Implantação da Web 4.0.
Execute o programa de instalação do Web Deploy e certifique-se de selecionar a 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 selecionar Personalizado, é possível ver a lista de componentes, conforme mostrado na ilustração a seguir.)
captura de tela
(Opcional) Verifique se o Web Deploy está sendo executado corretamente abrindo Painel de Controle > Sistema e Segurança > Ferramentas Administrativas > Serviços, e verifique se:
Serviço do Agente de Implantação Web está em execução (o nome do serviço é diferente em versões mais antigas).
O Serviço de Gerenciamento da Web está em execução.
Se um dos serviços de agente não estiver em execução, reinicie o Serviço do Agente de Implantação da Web.
Se o Serviço do Web Deployment Agent não estiver presente, acesse Painel de Controle > Programas > Desinstalar um programa, localize Implantação da Web da Microsoft <versão>. Escolha Alterar a instalação e verifique se você selecionou a opção Será instalado no disco rígido local para os componentes do Web Deploy. Conclua as etapas de instalação da alteração.
Criar o arquivo de configurações de publicação no IIS no Windows Server
Feche e reabra o Console de Gerenciamento do IIS para mostrar as opções de configuração atualizadas na interface do usuário.
No IIS, clique com o botão direito do mouse em Site Padrão, escolha Implantar>Configurar publicação da Implantação da Web.
Se você não vir o menu Deploy, consulte a seção anterior para verificar se o Web Deploy está em execução.
Na caixa de diálogo Configurar publicação da Implantação da Web, examine as configurações.
Clique em Configuração.
No painel Resultados, a saída mostra que os direitos de acesso foram concedidos ao usuário especificado e que um arquivo com uma extensão .publishsettings foi gerado na localização mostrada 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 de manipulador HTTP gerado dinamicamente para o Web Deploy. (Para fins de teste,http://myhostname:8172
geralmente funciona também.)A porta
publishUrl
é definida como a porta 8172, que é o padrão para Web Deploy.A porta
destinationAppUrl
é definida como a 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.
Nota
Se você estiver publicando no IIS em execução em uma VM do Azure, deverá abrir uma porta de entrada no Web Deploy e IIS no grupo de segurança de rede. Para obter informações detalhadas, consulte Abrir portas para uma máquina virtual.
Copie esse arquivo para o computador no qual você está executando o Visual Studio.
Importar as configurações de publicação no Visual Studio e implantar
No computador em que 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ê tiver configurado anteriormente quaisquer perfis de publicação, o painel Publicar será exibido. Clique em Novo ou Criar perfil.
Selecione a opção para importar um perfil.
Na caixa de diálogo Publicar, clique em Importar perfil.
Navegue até o local do arquivo de configurações de publicação que você criou na seção anterior.
Na caixa de diálogo Importar Arquivo de Configurações de Publicação, navegue até o perfil criado na seção anterior, selecione-o e clique em Abrir.
Clique em Concluir para salvar o perfil de publicação e 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 erros 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 do Servidor e URL de Destino.
Depois que o aplicativo for implantado com êxito, ele deverá ser iniciado automaticamente.
- Se o aplicativo não for iniciado após a implantação, inicie o aplicativo no IIS para verificar se ele é executado corretamente.
- No ASP.NET Core, certifique-se de que o campo do pool de Aplicativos do DefaultAppPool está definido como Sem Código Gerenciado.
Quando você estiver pronto, alterne para uma configuração de depuração.
Importante
Se você escolher uma Configuração de versão, desabilite a depuração no arquivo web.config ao publicar.
- Selecione Mais Opções>Editar para editar o perfil e selecione Configurações.
- Selecione Salvar e em seguida, republique o aplicativo.
- Escolha uma configuração de Depuração e escolha Remover arquivos adicionais no destino nas opções de Publicação do Arquivo.
- Selecione Editar para editar o perfil e selecione Configurações.
- Selecione Salvar e, em seguida, republique o aplicativo.
- Escolha uma configuração de Depuração e escolha Remover arquivos adicionais no destino nas opções de Publicação do Arquivo.
Aviso
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, use métodos alternativos. Por exemplo, considere a publicação em um pacote do Visual Studio e, em seguida, use WebDeploy.exe de uma linha de comando para implantar o pacote. Com esse método, você pode usar o Gerenciador do IIS para configurar usuários autorizados do Windows que podem publicar no servidor Web e executar WebDeploy.exe nessa conta de usuário do Windows. Consulte Instalando e configurando a implantação da Web no IIS 8.0 ou posterior. Se você usar credenciais de senha, use 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 o PowerShell, o RoboCopy ou quiser copiar manualmente os arquivos.
Configurar o site do ASP.NET Core no computador do Windows Server
Abra o Windows Explorer e crie uma nova pasta, C:\Publicar, a ser usada para implantar o projeto ASP.NET Core.
Se ainda não estiver aberto, abra o Gerenciador de Serviços de Informações da Internet (IIS) . (No painel esquerdo do Gerenciador do Servidor, selecione IIS. Clique com o botão direito do mouse no servidor e selecione Gerenciador dos Serviços de Informações da Internet (IIS).)
Em Conexões no painel esquerdo, acesse Sites.
Selecione o Site Padrão, escolha Configurações Básicas e defina o Caminho físico como C:\Publish.
Clique com o botão direito do mouse no nó Site Padrão e selecione Adicionar Aplicativo.
Defina o campo Alias como MyASPApp, aceite o pool de aplicativos padrão (DefaultAppPool) e defina o caminho físico como C:\Publish.
Em Conexões, selecione Pools de Aplicativos. Abra DefaultAppPool e defina o campo Pool de aplicativos como Sem Código Gerenciado.
Clique com o botão direito do mouse no novo site no Gerenciador do IIS, escolha Editar Permissões e confirme se IUSR, IIS_IUSRS ou o usuário configurado para acesso ao aplicativo Web é um usuário autorizado com direitos de Leitura e Execução.
Se você não vir um desses usuários com acesso, siga as etapas para adicionar o IUSR como um usuário com direitos de Leitura e Execução.
Importante
Para obter informações de segurança relacionadas às contas embutidas, consulte Compreendendo Built-In Contas de Usuários e Grupos no IIS 7.
Publicar e implantar o aplicativo publicando em uma pasta local do Visual Studio
Você também pode publicar e implantar o aplicativo usando o sistema de arquivos ou outras ferramentas.
No Gerenciador de Soluções, clique com o botão direito do mouse no nó do projeto e selecione Publicar (para o Web Forms, Publicar Aplicativo Web).
Se você tiver configurado anteriormente quaisquer perfis de publicação, o painel Publicar será exibido. Clique em Novo perfil.
Na caixa de diálogo Publicar, selecione Pasta, clique em Procurare crie uma nova pasta, C:\Publicar.
Clique em Concluir para salvar o perfil de publicação.
Clique em Concluir para salvar o perfil de publicação.
Alterne para uma configuração de depuração.
Escolha Editar para editar o perfil e depois Configurações. Escolha uma configuração de Depuração e, em seguida, escolha Remover arquivos adicionais no destino nas opções de Publicação do Arquivo.
Nota
Se você usar um build de Versão, desabilite a depuração no arquivo web.config depois da publicação.
Clique em Publicar.
O aplicativo publica uma configuração Debug do projeto na pasta local. O progresso aparece na janela Saída.
Copie o diretório do projeto ASP.NET do computador do Visual Studio para o diretório local configurado para o aplicativo ASP.NET (neste exemplo, C:\Publicar) no computador do Windows Server. Neste tutorial, presumimos que você esteja copiando manualmente, mas pode usar outras ferramentas como PowerShell, Xcopy ou Robocopy.
Cuidado
Se você precisar fazer alterações no código ou recompilar, será necessário republicar e repetir esta etapa. O executável copiado para o computador remoto deve corresponder exatamente à origem e aos símbolos locais. Se você não fizer isso, receberá um aviso de
cannot find or open the PDB file
no Visual Studio ao tentar depurar o processo.No Windows Server, verifique se você pode executar o aplicativo corretamente abrindo o aplicativo no navegador.
Se o aplicativo não for executado corretamente, pode haver uma incompatibilidade entre a versão do ASP.NET instalada no servidor e no computador do Visual Studio, ou você pode ter um problema com a configuração do IIS ou do site. Verifique novamente as etapas anteriores.
Baixar e instalar as ferramentas remotas no Windows Server
Baixe a versão das ferramentas remotas que correspondem à sua versão do Visual Studio.
No dispositivo ou servidor remoto no qual você deseja depurar, em vez do computador do Visual Studio, baixe e instale a versão correta das ferramentas remotas dos links na tabela a seguir.
- Baixe a atualização mais recente das ferramentas remotas para sua versão do Visual Studio. As versões de ferramentas remotas anteriores 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 Visual Studio 2019. Nesse cenário, não baixe as ferramentas remotas para o Visual Studio 2022.)
- Baixe as ferramentas remotas com a mesma arquitetura do computador em que você as está instalando. 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 | Link | Anotações |
---|---|---|
Visual Studio 2022 | Ferramentas remotas | Compatível com todas as versões do Visual Studio 2022. Baixe a versão correspondente ao sistema operacional do dispositivo (x86, x64 (AMD64) ou ARM64. Em versões mais antigas do Windows Server, consulte Desbloquear o download dos arquivos para obter ajuda com o download das ferramentas remotas. |
Visual Studio 2019 | Ferramentas remotas | As ferramentas remotas do Visual Studio 2019 estão disponíveis no My.VisualStudio.com. Se solicitado, participe do programa gratuito Visual Studio Dev Essentials ou faça login com sua ID de assinatura do Visual Studio. Baixe a versão correspondente ao sistema operacional do dispositivo (x86, x64 (AMD64) ou ARM64. Em versões mais antigas do Windows Server, consulte como desbloquear o download do arquivo para obter ajuda com o download das ferramentas remotas. |
Visual Studio 2017 | Ferramentas remotas | As ferramentas remotas do Visual Studio 2017 estão disponíveis no My.VisualStudio.com. Se solicitado, ingresse no programa gratuito Visual Studio Dev Essentials ou faça login com sua ID de assinatura do Visual Studio. Baixe a versão correspondente ao sistema operacional do dispositivo (x86, x64 (AMD64) ou ARM64. No Windows Server, confira Desbloquear o download do arquivo para obter ajuda para baixar as ferramentas remotas. |
Visual Studio 2015 | Ferramentas remotas | As ferramentas remotas do Visual Studio 2015 estão disponíveis no My.VisualStudio.com. Se solicitado, participe do programa gratuito Visual Studio Dev Essentials ou faça login com sua identificação de assinatura do Visual Studio. No Windows Server, consulte a instrução Desbloquear o download de arquivo 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 | Link | Anotações |
---|---|---|
Visual Studio 2019 | Ferramentas remotas | Compatível com todas as versões do Visual Studio 2019. Baixe a versão correspondente ao sistema operacional do dispositivo (x86, x64 (AMD64) ou ARM64. No Windows Server, confira Desbloquear o download do arquivo para obter ajuda para baixar as ferramentas remotas. Para a versão mais recente das ferramentas remotas, abra o documento do Visual Studio 2022 . |
Visual Studio 2017 | Ferramentas remotas | Compatível com todas as versões do Visual Studio 2017. Baixe a versão correspondente ao sistema operacional do dispositivo (x86, x64 (AMD64) ou ARM64. No Windows Server, consulte Desbloquear o download de arquivos para obter ajuda com o download das ferramentas remotas. |
Visual Studio 2015 | Ferramentas remotas | As ferramentas remotas do Visual Studio 2015 estão disponíveis no My.VisualStudio.com. Se solicitado, participe do programa gratuito Visual Studio Dev Essentials ou faça login com sua ID de assinatura do Visual Studio. No Windows Server, consulte Desbloquear o download de arquivo 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) só está disponível quando você instala as ferramentas remotas. Talvez seja necessário usar o assistente de configuração se desejar executar o depurador remoto como um serviço. Para obter mais informações, veja (Opcional) Configurar o depurador remoto como um serviço.
Nota
- Para depurar aplicativos Windows 10 ou posteriores em dispositivos ARM, utilize o ARM64, que está disponível na versão mais recente das ferramentas remotas.
- Para depurar aplicativos do Windows 10 em dispositivos Windows RT, use o ARM, que está disponível apenas no download de ferramentas remotas do Visual Studio 2015.
- Para depurar aplicativos x64 em um sistema operacional ARM64, execute o msvsmon.exe x64 instalado com as ferramentas remotas de ARM64.
Configurar o depurador remoto no Windows Server
No computador remoto, localize e inicie o Depurador Remoto no menu Iniciar.
Se você não tiver permissões administrativas no computador remoto, clique com o botão direito do mouse no aplicativo Depurador Remoto e selecione Executar como administrador. Caso contrário, basta iniciá-lo normalmente.
Se você estiver planejando anexar a um processo que está em execução como administrador ou estiver em execução em outra conta de usuário (como o IIS), clique com o botão direito do mouse no aplicativo Depurador Remoto e selecione Executar como administrador. Para obter mais informações, confira Executar o depurador remoto como administrador.
Na primeira vez que você iniciar o depurador remoto (ou antes de configurá-lo), o assistente de Configuração de Depuração Remota é exibido.
Na maioria dos cenários, escolha Avançar até chegar à página do assistente Configurar o Firewall do Windows.
Se a API dos Serviços Web do Windows não estiver instalada, o que acontece apenas no Windows Server 2008 R2, selecione o botão Instalar.
Selecione pelo menos um tipo de rede em que você deseja usar as ferramentas remotas. Se os computadores estiverem conectados por meio de um domínio, você deverá escolher o primeiro item. Se os computadores estiverem conectados por meio de um grupo de trabalho ou homegroup, escolha o segundo ou terceiro item conforme apropriado.
Depois, selecione Concluir para iniciar o depurador remoto.
Em seguida, selecione Configurar depuração remota para iniciar o depurador remoto.
Quando a configuração for concluída, a janela Depurador Remoto será exibida.
Agora o depurador remoto está aguardando uma conexã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 interromper o depurador remoto, selecioneArquivo>Sair. Você pode reiniciá-lo no menu Iniciar ou na linha de comando:
<Remote debugger installation directory>\msvsmon.exe
Nota
Se você precisar adicionar permissões para usuários adicionais, altere o modo de autenticação ou o número da porta para o depurador remoto, consulte Configurar o depurador remoto.
Para obter informações sobre como executar o depurador remoto como um serviço, consulte Executar o depurador remoto como um serviço.
Anexar ao aplicativo ASP.NET Core no computador do Visual Studio
A partir do Visual Studio 2022 versão 17.10 Versão Prévia 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 a exibição do Visual Studio 2019 (seletor de versão superior esquerdo no artigo).
No computador do Visual Studio, abra a solução que você está tentando depurar (MyASPApp se você estiver seguindo todas as etapas neste artigo).
No Visual Studio, clique em Depurar > Anexar ao Processo (Ctrl + Alt + P).
Dica
No Visual Studio 2017 e versões posteriores, é possível anexar novamente ao mesmo processo anexado anteriormente usando Depurar > Reanexar ao Processo... (Shift + Alt + P).
Defina o Tipo de Conexão cmo Remota (Windows).
A opção Destino de Conexão será exibida.
Defina o Destino de Conexão como 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ê deverá ver <nome do computador remoto>:4026
A porta é necessária. Se você não conseguir visualizar o número da porta, adicione-o de forma manual.
No computador do Visual Studio, abra a solução que você está tentando depurar (MyASPApp se você estiver seguindo todas as etapas neste artigo).
No Visual Studio, selecione Depurar > Anexar ao Processo (Ctrl + Alt + P).
Dica
No Visual Studio 2017 e versões posteriores, você pode ligar novamente ao mesmo processo ao qual estava anteriormente anexado com o uso de Depurar > Ligar novamente ao Processo... (Shift + Alt + P).
Defina o campo Qualificador para <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 2019, você deverá ver <nome do computador remoto>:4024
A porta é necessária. Caso não veja o número da porta, adicione-o manualmente.
Selecione Atualizar.
Você deverá 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 abrir a porta UDP de saída 3702 no servidor.
Verifique Mostrar processos de todos os usuários.
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 correto de w3wp.exe. A partir do .NET Core 3, esse processo é o padrão.
Caso contrário, selecione o processo de dotnet.exe. (Este é o modelo de hospedagem fora do processo.)
Se você tiver vários processos mostrando w3wp.exe ou dotnet.exe, verifique a coluna Nome de Usuário. Em alguns cenários, a coluna Nome de Usuário mostra o nome do pool de aplicativos, como IIS APPPOOL\DefaultAppPool. Se você vir o Pool de Aplicativos, mas ele não for exclusivo, crie um Pool de Aplicativos com um novo nome para a instância de aplicativo que você deseja depurar e, em seguida, poderá encontrá-lo facilmente na coluna Nome de Usuário.
Selecione Anexar.
Abra o site do computador remoto. Em um navegador, acesse http://<nome do computador remoto>.
Deve aparecer a página da Web do ASP.NET.
No aplicativo ASP.NET em execução, selecione o link para a página Privacidade.
O ponto de interrupção deve ser atingido no Visual Studio.
Se você não conseguir anexar nem atingir o ponto de interrupção, confira Solucionar 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, você precisa garantir que o campo do pool de aplicativos para o DefaultAppPool esteja configurado como Sem Código Gerenciado.
- Verifique se a versão de ASP.NET usada em seu aplicativo é a mesma que a versão instalada no servidor. Para o aplicativo, confira e defina a versão na página Propriedades. Para definir o aplicativo como uma versão diferente, essa versão deve ser instalada.
- Se o aplicativo tentar abrir, mas você receber um aviso de certificado, selecione que o site é confiável. Se você já fechou o aviso, poderá editar o perfil de publicação, um arquivo *.pubxml, em seu projeto e adicionar o seguinte elemento (somente 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 as 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, talvez seja necessário verificar se as portas estão abertas.
Portas obrigatórias:
- 80: Obrigatório para IIS (HTTP).
- 4026: necessário para depuração remota do Visual Studio 2022 (confira Atribuições de porta do depurador remoto para obter mais informações).
- 4024: necessário para depuração remota do Visual Studio 2019 (consulte Atribuições de porta do depurador remoto para obter mais informações).
- UDP 3702: (Opcional) a porta de descoberta permite que você use o botão Localizar ao anexar ao depurador remoto no Visual Studio.
Além disso, essas portas já devem ser abertas pela instalação do ASP.NET:
- 8172: (Opcional) Necessário para o Web Deploy implantar o aplicativo a partir do Visual Studio
Abrir uma porta
Para abrir uma porta no Windows Server, abra o menu Iniciar, procure Windows Defender Firewall ou Firewall do Windows com Segurança Avançada.
Em Windows Defender Firewall, escolha Configurações avançadas.
Em seguida, escolha Regras de Entrada > Nova Regra > Porta e clique em Avançar. (Para UDP 3702, escolha Regras de Saída em vez disso.)
Em Portas locais específicas, insira o número da porta e clique em Avançar.
Selecione Permitir a Conexão e em Avançar.
Selecione um ou mais tipos de rede para habilitar para a porta e selecione Próximo.
O tipo selecionado deve incluir a rede à qual o computador remoto está conectado.
Adicione o nome (por exemplo, do IIS, Web Deployou msvsmon) para a Regra de Entrada e selecione Concluir.
Você deve ver sua nova regra na lista Regras de Entrada ou Regras de Saída.
Se você quiser mais detalhes sobre como configurar o Firewall do Windows, consulte Configurar o Firewall do Windows para Depuração Remota.
Crie mais regras para as outras portas necessárias.