Durante o debug de uma aplicação web ocorreu o seguinte erro quando o projeto estava configurado para rodar utilizando o localhost ao invés do servidor web do próprio VS2005 em uma máquina utilizando o IIS7:
"Unable to start debugging on the server. Debugging failed because integrated Windows Authentication is not enabled."
Para habilitar o Windows Authentication no IIS7 proceder da seguinte forma:
-
Com o IIS7 aberto selecione o website publicado e dê um duplo clique no ícone Autenticações indicado na figura abaixo.
-
No item Autenticação do Windows selecione a Ação Habilitar.
Isto resolveu o problema da minha aplicação não conseguir rodar em modo Debug.
Depois de efetuada esta configuração quando rodei a aplicação obtive uma página de erro HTTP 403.14 não exibindo a minha aplicação que no caso era um webservice.
Para resolver este problema descobri que faltava a tag <system.webServer> que em aplicações .NET 3.5 já é incluída automaticamente pelo VS2008 e é obrigatória para rodar aplicações ASP.NET AJAX em IIS7, mas descobri que é necessária inclusive para aplicações não AJAX, no meu caso estava trabalhando com um WebService em .NET 2.0.
Portanto para resolver o meu problema inseri a seguinte configuração no meu web.config e a partir daí consegui rodar a aplicação no VS2005 utilizando o IIS7.
<system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
<modules>
<remove name="ScriptModule"/>
<add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</modules>
<handlers>
<remove name="WebServiceHandlerFactory-Integrated"/>
<remove name="ScriptHandlerFactory"/>
<remove name="ScriptHandlerFactoryAppServices"/>
<remove name="ScriptResource"/>
<add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</handlers>
</system.webServer>
0 comments:
Postar um comentário