Bem, esta batalha não foi minha, foi do meu colega de Projecto Nuno Almeida e infelizmente parece ser um problema relativamente comum pelo menos com a versão 5 do IIS.
A primeira coisa a descubrir é o que realmente se passa visto que a página de erro:
“HTTP 500 – Erro interno do Servidor”
não ajuda muito.
Para tal é uma questão de ir às opções de internet e desligar a opção “Mostrar mensagens de erro em HTTP amigáveis” pois se estamos a desenvolver software já está na altura de usar as coisas simplificadas para os utilizadores normais.
Depois disto já conseguimos um pouco mais de informação:
“Server Application Error
The server has encountered an error while loading an application during the processing of your request. Please refer to the event log for more detail information. Please contact the server administrator for assistance.”
Erro no FileMonitor (Portugal é nome da máquina.)
1 14:31:19 svchost.exe:712 OPEN C:\WINDOWS\system32\dllhost.exe ACCESS DENIED PORTUGAL\IWAM_PORTUGAL
2 14:31:19 svchost.exe:712 OPEN C:\WINDOWS\system32\dllhost.exe ACCESS DENIED PORTUGAL\IWAM_PORTUGAL
e no registo de eventos:
Tipo de evento: Aviso
Origem do evento: W3SVC
Categoria do evento: Nenhum
ID do evento: 36
Data: 27-05-2008
Hora: 14:23:51
Utilizador: N/D
Computador: PORTUGAL
Descrição:
O servidor não conseguiu carregar a aplicação ‘/LM/W3SVC/1/ROOT’. O erro foi ‘Erro de acesso geral negado
‘.
Para obter informações adicionais específicas desta mensagem, visite o site de suporte online da Microsoft localizado em: http://www.microsoft.com/contentredirect.asp.
Para mais informações, consulte o ‘Centro de ajuda e suporte’ em http://go.microsoft.com/fwlink/events.asp.
Tipo de evento: Erro
Origem do evento: DCOM
Categoria do evento: Nenhum
ID do evento: 10001
Data: 27-05-2008
Hora: 14:23:51
Utilizador: NT AUTHORITY\SYSTEM
Computador: PORTUGAL
Descrição:
Não foi possível iniciar um servidor DCOM: {99169CB1-A707-11D0-989D-00C04FD919C1} como ./IWAM_PORTUGAL. O erro:
“O acesso é negado. “
Ocorreu ao iniciar este comando:
C:\WINDOWS\system32\dllhost.exe /Processid:{3D14228D-FBE1-11D0-995D-00C04FD919C1}
Para mais informações, consulte o ‘Centro de ajuda e suporte’ em http://go.microsoft.com/fwlink/events.asp.
Com isto se chega à conclusão que isto é um erro a nível de permissões, parecendo que por algum motivo o IIS não foi capaz de definir correctamente as permissões dos utilizadores que usa por definição nos seus serviços, e não é corrigido com a reinstalação do IIS.
Para resolver isto é uma questão de seguir os passos presentes nesta página de suporte da Microsoft.
Mas alto, mesmo assim ficou com erro.
Ao tentarmos aceder a http://localhost/iisstart.asp continuamos com os mesmos erros no browser. Quanto ao filemon.exe da sysinternals já não dá erros de “ACCESS DENIED” .
Se verificarmos agora o registo de eventos deixamos de ter o erro com o id 10001 e passamos a ter o erro com o id 10010.
O evento tipo aviso com id 36 mantêm-se
Tipo de evento: Erro
Origem do evento: DCOM
Categoria do evento: Nenhum
ID do evento: 10010
Data: 27-05-2008
Hora: 15:09:52
Utilizador: NT AUTHORITY\SYSTEM
Computador: PORTUGAL
Descrição:
O servidor {3D14228D-FBE1-11D0-995D-00C04FD919C1} não foi registado no DCOM dentro do tempo de espera requerido.
Para mais informações, consulte o ‘Centro de ajuda e suporte’ em http://go.microsoft.com/fwlink/events.asp.
Isto significa que ainda existem problemas e como o aviso id 36 indica, ainda se trata de um problema de permissões. Mais uma vez recorre-se às instruções de uma página de suporte da Microsoft.
No fim de seguir todos os passos de ambas as páginas de suporte deve-se acabar com algo do género:
As próprias páginas de suporte da Microsoft indicam que estes problemas apenas afectam a versão 5 do IIS, mas tendo em conta que, como já referi, este será o nosso sistema minimo, convêm ter tudo a funcionar e saber como lidar com todo o tipo de problemas.