Pergunta

Ao usar o recurso app_offline.htm do ASP.NET, ele permite apenas html, mas nenhuma imagem.Existe uma maneira de exibir imagens sem ter que direcioná-los para um URL diferente em outro site?

Foi útil?

Solução

Sim, simplesmente não pode vir do site que contém o arquivo app_offline.htm.A imagem teria que ser hospedada em outro lugar.

Outras dicas

Outra solução é incorporar a imagem na página app_offline.htm usando um URI de dados.Há um amplo apoio para isso hoje em dia - veja o seguinte para detalhes completos -http://en.wikipedia.org/wiki/Data_URI_scheme

Se você estiver disposto a trabalhar um pouco mais, poderá facilmente criar uma página personalizada para colocar o aplicativo offline.

Uma solução possível:

  • Crie DisplayOfflineMessage.aspx:Contém rótulo para exibir sua mensagem offline do Aplicativo["OfflineMessage"].
  • GerenciarOfflineStatus.aspx:Contém uma caixa de seleção offline/online, área de texto para mensagem offline e um botão de atualização.O botão de atualização define duas variáveis ​​no nível do aplicativo, uma para a mensagem e um sinalizador que informa se o aplicativo está online.(Esta página deve estar acessível apenas para administradores)

Então em Global.asax

 public void Application_Start(object sender, EventArgs e)
 {
     Application["OfflineMessage"] = "This website is offline.";
     Application["IsOffline"] = false;
 }



 public void Application_OnBeginRequest(object sender, EventArgs e)
 {
     bool offline = Convert.ToBoolean(Application["IsOffline"]);

     if (offline) 
     {

         // TODO: allow access to DisplayOfflineMessage.aspx and ManageOfflineStatus.aspx

         // redirct requests to all other pages
         Response.Redirect("~/DisplayOfflineMessage.aspx");
     }
 }

Se você não oferece suporte a navegadores anteriores ao IE 8, poderá incorporar as imagens usando um URI de dados.

http://css-tricks.com/data-uris/

Eu tenho uma ideia.

Você pode criar um aplicativo separado, apontado para a mesma pasta, sem o ASP.NET habilitado.Então, o acesso às imagens por este aplicativo não será afetado pelo arquivo app_offline.htm.Ou aponte esse aplicativo diretamente para a pasta com conteúdo estático, não haverá nenhum arquivo app_offline.

Mas, é claro, você precisa atribuir um nome DNS separado para este aplicativo, tipo static.somedomain.com.

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