Nginx: página de manutenção e acesso ao host local

1

Enquanto me preparo para testar algumas alterações, pensei em configurar um bloco de páginas de manutenção para que eu pudesse fazer o teste.

Apenas percebi que os exemplos de blocos de manutenção para o nginx eliminam o site para todos.

Como você veicula a página de manutenção para os visitantes ainda permitindo o acesso localhost?

Devo apenas criar um novo bloco de servidor escutando em outra porta e negar tudo, permitir 127.0.0.1?

    
por Ian 22.05.2010 / 04:51

2 respostas

1

A maneira que eu faço é ter duas cópias do meu site, uma que é ao vivo e outra que é desenvolvimento. Eu faço um svn checkout no meu desenvolvimento e testo lá, e quando as mudanças são testadas e prontas rssync elas para o meu ambiente ao vivo.

Ter uma página de manutenção porque você está fazendo alterações realmente não deveria ser necessário, a menos que você esteja fazendo alterações, por exemplo, em um banco de dados no qual as consultas levam vários minutos para serem executadas.

Mas, para responder à sua pergunta real, os blocos de localização não se importam com quem está solicitando a página, apenas sobre o URI. Uma solução seria usar o módulo de acesso para negar acesso a qualquer um que não você e, em seguida, definir a página de erro como uma página de manutenção.

    
por 22.05.2010 / 11:18
0

Em vez de usar o módulo de acesso (como Martin Fjordvald sugeriu), o que resulta em um erro 403 Forbidden , você deve considerar retornar inserindo 503 Service Temoporarily Unavailable com uma página de erro personalizada:

server {
    # ... usual configuration here ...

    error_page  503 @maintenance;

    # Use this line if page is currently in maintenance mode
    return 503;

    location @maintenance {
        rewrite ^   /maintenance.html break;
    }
}
    
por 17.02.2015 / 10:19

Tags