O site retorna erro 500 quando um nome parcialmente qualificado é usado

O site retorna erro 500 quando um nome parcialmente qualificado é usado

Estou configurando um site interno para hospedar um serviço web.

O site possui a entrada DNS service.test.company.local. A empresa usa company.localcomo zona DNS para aplicativos internos e essa entrada é sufixada silenciosamente em todas as solicitações de DNS.

Dessa forma, uma pesquisa service.testresolve o nome completo e o endereço IP correto.

O site IIS 6 está configurado para escutar na porta 80 no endereço IP service.testpara o qual é resolvido.

Ao tentar acessar este site via service.test.company.local, o endereço resolve e o serviço é exibido corretamente.

Ao tentar acessar este site via service.test, uma página de erro do IIS é mostrada, informando 500 - erro interno do servidor.

Nenhuma entrada é gerada para esta solicitação nos arquivos de log do site ou no log de eventos do aplicativo.

Não consigo entender de onde vem o erro e é realmente frustrante a falta de informações que o IIS está me fornecendo.

Alguma idéia para o problema ou uma solução? Alguma outra fonte de informação que eu possa verificar?

EDITAR:

O erro hostil do IIS é:

Host desconhecido


Descrição: Não é possível localizar o servidor chamado "service.test" --- o servidor não possui uma entrada DNS. Talvez haja um erro ortográfico no nome do servidor ou o servidor não exista mais. Verifique novamente o nome e tente novamente.


EDITAR: 2

Suspeito que isso tenha algo a ver com a forma como a organização configurou suas entradas DNS. Posso adicionar outras entradas prefixadas ao meu arquivo hosts e obter localmente a resolução correta para o site.

Acho que esse problema requer um guru do DNS para sugerir possíveis problemas. Infelizmente, não tenho autoridade sobre as entradas de DNS, por isso espero muito sofrimento.

Responder1

Depois de envolver minha equipe de operações, a resposta foi que o servidor proxy estava tentando processar solicitações, em vez de desviar para a rede local.

A mensagem de erro retornada é do servidor proxy, não do servidor IIS. Essa informação foi encontrada quando um membro da equipe de operações percebeu que as solicitações HTTP não estavam enviando informações de desvio de proxy como esperado.

As regras de desvio de proxy incluem *.company.local, que funciona para endereços sem quaisquer outros sufixos e fornece desvio para o nome totalmente qualificado, mas não parece se aplicar quando outro sufixo é usado, como .test.

A partir disso, decidimos que o problema é muito complicado para ser resolvido e usaremos os nomes totalmente qualificados como uma solução alternativa "suficientemente boa".

Responder2

Herói da programação,

Você definiu o cabeçalho do host do site para service.test no site específico. Devido ao suporte a vários sites em um endereço IP, o IIS usa cabeçalhos de host para diferenciar ao hospedar na porta 80.

Se você clicar nas propriedades do seu site, depois em Avançado, adicione hostheader e coloque em branco, service.test, se o dns está resolvendo para o ip etc... apenas certifique-se de ter uma página padrão correta nos documentos e ela deveria carregar..

tente um hello world só para ver se o html carrega.

REgd

Responder3

Herói da programação,

Bom ponto, CodingGorilla, o erro não é aquele que seria encontrado para um problema de cabeçalho de host. Erro interno parece apontar para outra coisa.

Você pode dar uma olhada no pool de aplicativos do site. Você está usando o serviço de rede como identidade? Fazhttp://localhostcarregar ou fornecer um documento de erro não encontrado? você pode apenas tentar criar um novo site e tentar com aquele, se o localhost carregar com um arquivo htm, pode ser algo na metabase desse site específico que está desativado.

Regras

Responder4

Não creio, com base na sua edição, que você esteja acessando o servidor IIS. Como você mencionou, a solicitação nunca aparece nos logs do IIS, e esse tipo de erro não parece ser o tipo de erro que o IIS irá fornecer.

Tente editar seu arquivo host (c:\windows\system32\drivers\etc\host) e adicione a seguinte entrada:

service.test    127.0.0.1

Isso deve garantir que a solicitação service.test vá para o seu servidor IIS (supondo que você esteja acessando o próprio servidor IIS, conforme mencionado em um comentário).

Se isso funcionar, o problema provavelmente está na maneira como a resolução de nomes está configurada no servidor. O que significa que o domínio ‘company.local’ não está na lista de sufixos de pesquisa do DNS.

informação relacionada