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

1

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

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

Assim, uma pesquisa por service.test resolve o nome completo e o endereço IP correto.

O site do IIS 6 está configurado para escutar na porta 80 no endereço IP service.test resolve.

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

Ao tentar acessar este site via service.test , é mostrada uma página de erro do IIS, relatando 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.

Eu não consigo entender de onde o erro está vindo e é realmente frustrante a falta de informações que o IIS está me dando.

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 é:

Anfitrião 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.

EDIT: 2

Suspeito que isso tenha algo a ver com a maneira como a organização configurou suas entradas de DNS. Eu posso adicionar outras entradas prefixadas no meu arquivo hosts e localmente obter a resolução correta para o site.

Acho que esse problema exige que um guru de DNS sugira possíveis problemas. Infelizmente, não tenho autoridade sobre as entradas de DNS, por isso espero muita dor.

    
por Paul Turner 10.09.2010 / 19:00

4 respostas

2

Depois de envolver minha equipe de operações, a resposta é que o servidor proxy está tentando processar solicitações, em vez de elas passarem pela rede local.

A mensagem de erro que está sendo retornada é do servidor proxy, não do servidor IIS. Esta informação foi tropeçada quando um membro da equipe de operações notou que as solicitações HTTP não estavam enviando informações de bypass de proxy como esperavam.

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

A partir disso, decidimos que o problema é muito confuso para corrigir e usaremos os nomes completos como uma solução "boa o suficiente".

    
por 13.09.2010 / 19:34
0

Programando Herói,

Você configurou o hostheader do Site para service.test no site específico. Devido a vários sites em 1 endereço IP suppport, o IIS usa hostheaders para diferenciar quando hospedar na porta 80.

Se você clicar nas propriedades do seu site, em seguida, Avançado, adicionar no hostheader, e colocar em branco, service.test, se o dns está resolvendo para o ip etc ... apenas verifique se você tem uma página padrão correta em documentos e deve carregar ..

experimente um hello world apenas para ver se o html será carregado ...

REgd

    
por 10.09.2010 / 19:14
0

Programando Herói,

Bom ponto CodingGorilla, o erro não é aquele que seria encontrado para um problema de hostheader. 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 a identidade? O link carrega ou fornece um documento de erro não encontrado? você pode apenas tentar criar um novo site e tentar com ele, se o localhost carregar com um arquivo htm, pode ser algo na metabase com aquele site em particular que está desligado.

Regds

    
por 10.09.2010 / 19:43
0

Eu não acho que, com base em sua edição, você esteja acessando seu servidor IIS. Como você mencionou, a solicitação nunca aparece nos logs do IIS, e esse tipo de erro não parece o tipo de erro que o IIS fornecerá a você.

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 servidor IIS (supondo que você esteja acessando a partir do próprio servidor IIS, conforme mencionado em um comentário).

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

    
por 10.09.2010 / 20:09