Erro: não foi possível iniciar a depuração no servidor Web
Quando você tenta depurar um aplicativo em execução em um servidor Web, muitas vezes pode receber essa mensagem de erro:
Unable to start debugging on the Web server
Se a mensagem for maior que isso, esse problema será abordado por um subtópico desse.
Se você encontrar esse erro, haverá várias coisas a serem consideradas. Primeiro vá para Coisas para verificar e, em seguida, considere os demais itens com base na configuração de hardware e software.
Coisas para verificar
Aplicativos Web em servidores remotos
Aplicativos Web armazenados no Visual SourceSafe e usando Extensões de Servidor do FrontPage
Anexando manualmente
A solicitação de depuração não pôde ser processada pelo servidor devido à sintaxe inválida
Coisas para verificar
Experimente verificar as seguintes ações:
Examine os procedimentos para configurar o ASP.NET ou o Servidor ATL. Para obter mais informações, consulte Preparando-se para depurar ASP.NET.
Você tem os privilégios de acesso necessários para depurar? Para obter mais informações, consulte a seção Requisitos de segurança em Depuração do ASP.NET: requisitos do sistema.
Você está executando uma versão do Windows que permite que o depurador do Visual Studio anexe-se automaticamente a um aplicativo Web? Caso contrário, você precisará iniciar o aplicativo sem depuração e anexar manualmente a ele. (Para obter mais informações, consulte Anexando manualmente e Depuração do ASP.NET: requisitos do sistema.)
O aplicativo Web tem um arquivo Web.config?
O arquivo Web.config habilita o modo de depuração definindo o atributo debug como true? Para obter mais informações, consulte Como habilitar a depuração para aplicativos ASP.NET.
O arquivo Web.config contém algum erro de sintaxe? É possível verificar se há erros de sintaxe executando o aplicativo Web sem depuração. (No menu Depurar, escolha Iniciar sem Depurar.) Se houver erros de sintaxe em Web.config, as informações detalhadas serão exibidas.
Você criou o projeto especificando um endereço IP específico (100.20.300.400, por exemplo)? Depurar um servidor Web requer autenticação NTLM. Por padrão, os endereços IP devem fazer parte da Internet e a autenticação NTLM não é feita pela Internet. Para corrigir esse problema:
Ao criar o projeto, especifique o nome do computador em sua intranet.
-ou-
Adicione o endereço IP (http://100.20.300.400) à lista de sites confiáveis em seu computador. (Do menu Ferramentas do Internet Explorer, escolha Opções da Internet e selecione a guia Segurança).
As extensões necessárias são registradas no computador do servidor? Se não, registre novamente o ASP.NET conforme descrito no procedimento a seguir.
O IIS foi instalado no computador local (o computador que executa o Visual Studio) depois que o Visual Studio foi instalado? O IIS deve ser instalado antes do Visual Studio. Se tiver sido instalado posteriormente, poderá ser necessário registrar novamente o ASP.NET.
Ao registrar novamente o ASP.NET
De uma janela prompt de comando, execute o seguinte comando: systemroot\Microsoft.NET\Framework\ versionNumber \aspnet_regiis -i
Observação Com o Windows Server 2003, você pode instalar o ASP.NET usando Adicionar ou Remover Programas no Painel de Controle.
Insira o disco do Visual Studio, execute o programa de instalação e selecione Reparar/Reinstalar. Esta etapa criará o compartilhamento wwwroot$ e adicionará as permissões apropriadas.
O nome do site está mapeado para o endereço de loopback local enquanto que a Autenticação Integrada está ativada? Consulte este artigo da Base de Dados de Conhecimento para obter uma resolução.
A URL para a página inicial do projeto foi especificada corretamente? A extensão e o diretório do projeto estão corretos?
Verifique as configurações do IIS para o aplicativo Web. Para obter mais informações, consulte Como verificar as configurações de propriedade do IIS.
Se você tiver duas versões do .NET Framework instaladas no servidor Web, verifique se a versão correta está definida nas configurações do IIS. Para obter mais informações, consulte Como verificar as configurações de propriedade do IIS.
Aplicativos Web em servidores remotos
Se o aplicativo Web estiver em um servidor remoto, primeiro confira se você verificou os itens em Coisas para verificar. Em seguida, verifique o seguinte:
O computador que está executando o servidor IIS tem os Componentes Remotos do Visual Studio instalados? Para obter mais informações, consulte Preparando-se para depurar ASP.NET.
Você tem os privilégios de acesso necessários para depurar? Para obter mais informações, consulte a seção Requisitos de segurança em Depuração do ASP.NET: requisitos do sistema.
Você está usando o Terminal Server para tentar depurar um aplicativo Web em um computador remoto? A depuração remota de aplicativos Web nativos que usam Terminal Server tem suporte no Windows XP. Não há suporte no Windows 2000 ou Windows NT.
Aplicativos Web armazenados no Visual SourceSafe e usando Extensões de Servidor do FrontPage
Se o aplicativo Web estiver armazenado no Visual SourceSafe e usar extensões do servidor do FrontPage como seu modo de acesso Web, verifique o seguinte:
- O Visual SourceSafe está localizado no mesmo computador que o servidor/servidor Web do FrontPage? Nesse caso, você pode depurar usando a Autenticação Integrada. Para verificar a configuração da Autenticação Integrada, consulte o procedimento Para verificar as configurações de segurança do IIS para o aplicativo Web localizado no tópico a seguir: Como verificar as configurações de propriedade do IIS.
A solicitação de depuração não pôde ser processada pelo servidor devido à sintaxe inválida
Muitas vezes, o servidor não pode processar uma solicitação de depuração devido à sintaxe incorreta. A sintaxe de solicitação incorreta pode ser causada por erros no arquivo machine.config. Se o arquivo machine.config definir maxRequestLength como um valor grande demais (40.960.000, por exemplo), esse erro ocorrerá.
Anexando manualmente
Se você siga as etapas de solução de problemas e ainda receber uma mensagem de erro ao iniciar a depuração, convém tentar depurar seu aplicativo anexando manualmente.
Para anexar manualmente
Inicie o aplicativo sem depuração. (No menu Depurar, escolha Iniciar sem Depurar.)
Determine o nome do processo de IIS ou processo de trabalho apropriado. Os aplicativos de servidor ATL são nomeados inetinfo.exe por padrão. Para determinar o nome do processo de trabalho do ASP.NET, consulte Como localizar o nome do processo ASP.NET.
Use um dos seguintes procedimentos para determinar em qual processo um aplicativo do ASP.NET ou do servidor ATL é executado.
Anexe ao processo determinado pela etapa anterior. Para obter mais informações, consulte <PAVE OVER> Como anexar a um processo em execução.
Para verificar em qual processo um aplicativo ASP.NET é executado
Use Visual Studio ou outro editor de texto para abrir o arquivo machine.config para o aplicativo.
Dentro do nó system.web, localize o nó ProcessModel e examine o atributo enable:
Se enable estiver definido como TRUE, o aplicativo será executado sob aspnet_wp.exe ou w3wp.exe. (Essa também é a configuração padrão.)
Se enable estiver definido como FALSE, o aplicativo será executado sob inetinfo.exe.
Para verificar em qual processo um aplicativo do Servidor ATL é executado
No Gerenciador de Soluções, clique com o botão direito no nome do projeto e escolha Propriedades no menu de atalho.
Na caixa de diálogo <Projeto> Páginas de Propriedades, abra a pasta Implantação da Web e escolha Geral.
Examine a configuração de Proteção de Aplicativos.
Se a configuração for Baixo (Processo IIS), o aplicativo será executa sob inetinfo.exe.
Se a configuração for Médio (Pooled), o aplicativo será executado em um processo dllhost.exe (em comum com outros aplicativos agrupados do Servidor ATL).
Na configuração Alto (Isolado), o aplicativo será executado em um processo dllhost.exe (separado de outros aplicativos do Servidor ATL).
Clique em OK para fechar a caixa de diálogo <Projeto> Páginas de Propriedades.
Consulte também
Tarefas
Erro: o servidor Web não conseguiu localizar o recurso solicitado
Referência
Depurando aplicativos Web: erros e solução de problemas