Como mostrar uma página de manutenção do site quando a rede está inoperante

5

Hospedamos nossos sites da Web ASP.NET internamente (dentro de nossa DMZ). Quando estamos fazendo manutenção de rede, etc., gostaríamos que nossos sites exibissem uma página de manutenção, mas nossa rede está inativa, portanto nossos servidores de hospedagem estão desativados. Não hospedamos nossas entradas de DNS (elas são tratadas externamente) para que pudéssemos ter uma página de manutenção hospedada externamente, mas exigir uma alteração de DNS para manutenção levaria muito tempo. Que tipo de soluções poderíamos empregar para lidar com interrupções de rede enquanto ainda damos aos nossos usuários externos alguma indicação de que ainda existimos? O que funcionou para você e o que você tentou?

    
por SteveBering 10.06.2009 / 18:53

6 respostas

3

Um proxy reverso externo que aponta para seu site ativo pode exibir uma página padrão quando o site de back-end não estiver disponível.

    
por 10.06.2009 / 18:57
2

Eu uso o haproxy para essa configuração exata. Está hospedado em um VPS Linux externo. Quando o sistema proxy consegue obter com êxito a página de verificação de integridade no servidor da Web real, é isso que é exibido ao cliente. Quando a verificação de integridade falha, ela exibe uma página estática de um servidor Apache local para o proxy VPS.

Aqui está o meu haproxy.conf:

global
maxconn 4096
daemon
defaults
mode http
clitimeout 60000
srvtimeout 30000
contimeout 4000
option httpclose # Disable Keepalive

listen FarmName 10.9.8.7:80
        mode http
        stats enable
        stats auth admin:Fa2a6eSe
        balance roundrobin
        cookie haCookie insert nocache
        option httpclose
        option forwardfor
        option httpchk HEAD /healthcheck HTTP/1.0
        server active 1.2.3.4:5080 check
        server static-backup 127.0.0.1:80 check inter 500 rise 1 fall 2 backup
    
por 15.07.2009 / 02:48
0

Bem, eu não sei se esta é a solução ideal, porque está adicionando complexidade à sua solução: você pode colocar alguns proxies reversos (squid, MS ISA, ...) na frente de seus servidores web (fora do seu servidor). rede) e executar as solicitações por meio desses servidores.

Então, quando você está planejando o tempo de inatividade, basta alterar algumas regras para mostrar a mensagem estática "desculpe, estamos off-line" .

    
por 10.06.2009 / 18:59
0

Você pode configurar uma solução de failover de DNS (o DNS Made Easy fornece essa opção), mas, dependendo das configurações de TTL, as pessoas provavelmente não receberão as atualizações, exceto por interrupções mais longas. Claro, você também precisaria de um servidor externo para hospedar a página de manutenção.

Sua melhor opção para o failover instantâneo é comprar um pequeno servidor hospedado em algum lugar, com uma página da Web estática e usar uma ferramenta (como heartbeat no linux) para monitorar quando o servidor principal está indisponível e faz com que o servidor secundário assuma o endereço IP.

    
por 10.06.2009 / 19:00
0

Por que não apenas provisionar uma única estação de trabalho / servidor com o IIS exibindo uma única página de manutenção estática? Quando você precisar desativar os servidores da Web, basta acessar a estação de trabalho de manutenção e certificar-se de que ela responda às solicitações da Web que chegam ...

Devido à simples página web estática, você provavelmente poderia sair com uma pequena / média estação de trabalho, talvez até mesmo um laptop ... Você poderia até mesmo se safar com uma Máquina Virtual que fica offline até que você precise dela ...

Parece que todo o resto é mais trabalho do que o necessário ...

    
por 15.07.2009 / 02:36
0

Se você tiver um site de aplicativo da web asp.net e colocar um arquivo de texto chamado " app_offline.htm " na raiz do site, todas as solicitações para esse site serão redirecionadas para esse app_offline arquivo .htm.

Basicamente, se você precisar colocar um site ASP.NET inteiro offline, poderá colocar uma mensagem legal nesse arquivo. Em seguida, qualquer nova solicitação para um URL, qualquer URL, nesse site será redirecionada para esse arquivo, permitindo que você faça manutenção no site, atualizações ou qualquer outra coisa. Não é realmente um redirecionamento embora. O ASP.NET basicamente encerra o site, descarrega-o do servidor e para de processar qualquer solicitação para esse site. Ou seja, até que você exclua o arquivo app_offline.htm - as coisas continuarão normalmente e seu site ASP.NET será carregado e começará a atender as solicitações novamente.

Espero que ajude. Felicidades!

    
por 30.06.2017 / 18:36