Pergunta

Eu li sobre o arquivo app_offline.htm que pode ser colocado dentro da raiz de uma aplicação .NET 2.0, que vai na sua essência desligar o aplicativo e desabilitar quaisquer outras páginas de ser solicitado.

Eu coloquei o arquivo na raiz, e as minhas cargas site ainda. Eu entrei em documentos padrão no IIS e configurá-lo para app_offline.htm eo site ainda cargas (este pode ter sido um problema de cache embora)

De qualquer forma, alguém ter problemas usando este? Estou fazendo algo errado?

Foi útil?

Solução

Eu tenho usado o truque app_offline.htm extremamente útil para encerrar sites / atualização no passado sem quaisquer problemas.

Certifique-se de que você está realmente colocando o arquivo "app_offline.htm" na "raiz" do site que você configurou no IIS.

Também garantir que o arquivo é chamado exatamente como deveria ser: app_offline.htm

Além disso, não deve haver outras alterações IIS que você deve precisar fazer uma vez que o processamento desse arquivo (com este nome específico) é tratada pelo ASP.NET tempo de execução em vez de si IIS (para o IIS v6) .

Esteja ciente, no entanto, que, apesar de colocar esse arquivo na raiz do seu site irá forçar o aplicativo para "desligar" e exibir o conteúdo do arquivo "app_offline.htm" em si, qualquer existente pedidos ainda vai ter o verdadeiro site servido até eles. Só new solicitações obterão o conteúdo app_offline.htm.

Se você ainda está tendo problemas, experimente os seguintes links para mais informações:

Scott Gu é app_offline.htm

app_offline.htm e trabalhar em torno dos "erros IE amigáveis" recurso

Será app_offline.htm solicitações atuais de parada ou apenas novos pedidos?

Outras dicas

Verifique se o seu arquivo app_offline.htm é de pelo menos 512 bytes. A app_offline.htm de zero bytes não terá nenhum efeito.

UPDATE:. As versões mais recentes de ASP.NET/IIS podem se comportar melhor do que quando eu escrevi este

UPDATE 2: Se você estiver usando ASP.NET MVC, adicione o seguinte ao web.config:

<?xml version="1.0"?>
<configuration>
    <system.webServer>
        <modules runAllManagedModulesForAllRequests="true" />
    </system.webServer>
</configuration>

Note que este se comporta da mesma no IIS 6 e 7.x, e NET 2, 3 e 4. x.

Observe também que quando app_offline.htm está presente, o IIS retornará esse código de status http:

HTTP/1.1 503 Service Unavailable

Isso tudo é por design. Isso permite que o balanceador de carga (ou qualquer outro) para ver se o servidor está fora de linha.

Possível permissão Edição

Eu sei que este post é bastante antigo, mas eu tive um problema semelhante e meu arquivo foi escrito corretamente.

Eu originalmente criou o arquivo app_offline.htm em outro local e, em seguida, mudou-se para a raiz do meu aplicativo. Por causa da minha configuração Então eu tive um problema de permissões.

O site agiu como se ele não estava lá. Criando o arquivo no diretório raiz em vez de movê-lo, fixa o meu problema. (Ou você poderia apenas corrigir a permissão em Propriedades-> segurança)

Espero que ajude alguém.

Faça extensões de arquivo com certeza são visíveis no explorador e nome do arquivo é realmente

app_offline.htm

não

app_offline.htm.htm

Certifique-se de que app_offline.htm está na raiz do diretório virtual ou site no IIS.

Eu corri para um problema muito semelhante à pergunta original que me levou um pouco de tempo para resolver.

Apenas alguém meter mais está trabalhando em um aplicativo MVC e encontra o seu caminho para esta discussão, certifique-se que você tem um mapeamento de curinga para o apropriado .Net aspnet_isapi.dll definido. Assim que eu fiz isso, meu app_offline.htm começou a se comportar conforme o esperado.


IIS 6 Configuração Passos

Em Propriedades do aplicativo do IIS, selecione a guia Virtual Directory.

Em Configurações do aplicativo, clique no botão de configuração.

aplicação Sob Wildcard Maps, clique no botão Inserir.

Digite C:. \ WINDOWS \ Microsoft.NET \ Framework64 \ v4.0.30319 \ aspnet_isapi.dll, clique em OK

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top