Erros remotos do IIS para hosts específicos

Erros remotos do IIS para hosts específicos

Uma das opções de configuração do IIS é quantos detalhes de erro vão para o navegador do cliente.

Está claro por que alguém desejaria ter seus próprios servidores de desenvolvimento e não passar mensagens de erro detalhadas ao público a partir de seus servidores de produção.

Como você configura o IIS para enviar erros para hosts específicos - como o endereço IP do desenvolvedor, por exemplo? Não quero fazer a área de trabalho remota para o servidor apenas para ver qual é o erro real no aplicativo.

A alternativa que estou pensando é configurar outro site no mesmo servidor e conceder acesso apenas a hosts específicos. Este site funcionará como um proxy reverso para o site do qual estou tentando obter erros detalhados, mas isso parece mais complicado do que deveria.

Responder1

Usar as configurações padrão do IIS permite distinguir apenas entre o servidor local e qualquer máquina remota. Não há como permitir que determinadas máquinas remotas obtenham erros detalhados e outras não.

Existe um truque para fazer isso de qualquer maneira.

Sua ideia de ter um segundo site para desenvolvimento já está certa, o ideal é que você queira um único site com todos os arquivos do seu aplicativo, mas queira dois web.configs diferentes para definir suas configurações de erro.

Não é possível ter um único site, mas duas configurações, mas o sistema de configuração do IIS é hierárquico e você pode armazenar a maioria das configurações em mais de um local.

Crie dois sites, ambos apontando para o mesmo local físico.

Em vez de colocar suas configurações no web.config local, você as coloca <system.web><customErrors>no web.config global %systemroot%\Microsoft.NET\Framework64\v4.0.30319\Config\web.confige, <system.webServer><httpErrors>em %systemroot%\System32\inetsrv\config\applicationHost.configambos os casos, cerca essas configurações com uma tag de localização como:

<location path="ProdSite">
    <system.web>
        <customErrors mode="On" />
    </system.web>
</location>

<location path="DevSite">
    <system.web>
        <customErrors mode="Off" />
    </system.web>
</location>

Você ainda pode usar o Gerenciador IIS para fazer isso, na Managementseção do site, abra o Configuration Editore faça uma busca detalhada nas configurações que deseja alterar, na parte superior altere o Frommenu suspenso para Root Web.ConfigouApplicationHost.config

insira a descrição da imagem aqui

Ainda não é muito fácil, mas você consegue se sair bem com um único site.

informação relacionada