Arquivo offline do aplicativo (app_offline.htm)

Observação

Esta não é a versão mais recente deste artigo. Para informações sobre a versão vigente, confira a Versão do .NET 8 deste artigo.

Aviso

Esta versão do ASP.NET Core não tem mais suporte. Para obter mais informações, confira .NET e a Política de Suporte do .NET Core. Para informações sobre a versão vigente, confira a Versão do .NET 8 deste artigo.

Importante

Essas informações relacionam-se ao produto de pré-lançamento, que poderá ser substancialmente modificado antes do lançamento comercial. A Microsoft não oferece nenhuma garantia, explícita ou implícita, quanto às informações fornecidas aqui.

Para informações sobre a versão vigente, confira a Versão do .NET 8 deste artigo.

O arquivo offline do aplicativo (app_offline.htm) é usado pelo Módulo ASP.NET Core para desligar um aplicativo.

Se um arquivo com o nome app_offline.htm for detectado no diretório raiz de um aplicativo, o Módulo do ASP.NET Core tentará desligar normalmente o aplicativo e parar o processamento de solicitações de entrada. Se o aplicativo ainda está em execução após o número de segundos definido em shutdownTimeLimit, o Módulo do ASP.NET Core interrompe o processo em execução.

Enquanto o arquivo app_offline.htm estiver presente, o Módulo do ASP.NET Core responderá às solicitações enviando o conteúdo do arquivo app_offline.htm. O app_offline.htm precisa ser inferior a 4 GB. Quando o arquivo app_offline.htm for removido, a próxima solicitação iniciará o aplicativo.

Ao usar o modelo de hospedagem de fora do processo, talvez o aplicativo não desligue imediatamente se houver uma conexão aberta. Por exemplo, uma conexão WebSocket pode atrasar o desligamento do aplicativo.

Arquivos de implantação bloqueados

Os arquivos na pasta de implantação são bloqueados quando o aplicativo está em execução. Os arquivos bloqueados não podem ser substituídos durante a implantação.

O app_offline.htm é o mecanismo primário para liberar arquivos bloqueados. O app_offline.htm é usado pela Implantação da Web para interromper e iniciar corretamente o aplicativo.

O app_offline.htm pode ser usado manualmente para iniciar e parar o aplicativo (requer o PowerShell 5 ou posterior):

$pathToApp = '{PATH TO APP}'


New-Item -Path $pathToApp -Name "app_offline.htm" -ItemType "file"

# Provide script commands here to deploy the app

Remove-Item -Path $pathToApp\app_offline.htm

No script anterior do PowerShell:

  • O espaço reservado {PATH TO APP} é o caminho para o aplicativo.
  • O comando New-Item interrompe o pool de aplicativos.
  • O comando Remove-Item inicia o pool de aplicativos.
  • Os comandos entre o comando New-Item e o comando Remove-Item são fornecidos pelo desenvolvedor para implantar o aplicativo.

Os arquivos também podem ser desbloqueados ao interromper o pool de aplicativos manualmente no Gerenciador do IIS no servidor. Não use o arquivo app_offline.htm ao usar o Gerenciador do IIS para interromper e reiniciar o pool de aplicativos.