Página personalizada no erro 502 Bad Gateway

1

Eu quero usar o Nginx como um proxy reverso simples, mas se o servidor por trás do Nginx estiver inativo, eu apenas exibi uma página em branco. Por algum motivo, esta configuração não está exibindo uma página em branco no erro 502 e não consigo descobrir o porquê.

user www-data;
worker_processes  1;

error_log  /var/log/nginx/error.log;
pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
    use epoll;
    # multi_accept on;
}

http {

    keepalive_timeout 65;
    proxy_read_timeout 200;

    upstream tornado {
        server 127.0.0.1:8001;
    }

    server {
        listen 80;
        server_name www.something.com;

        location / {
            error_page 502 = @blank;
            proxy_pass http://tornado;
        }

        location @blank {
            index index.html;
            root /web/blank;
        }
    }
}
    
por Giovanni Toraldo 29.09.2010 / 03:27

2 respostas

5

Eu acredito que "root" é ignorado em locais nomeados (@blank). Não sei dizer se é por design ou um bug.

Isso funciona para mim (0.7.67):

    location / {
        error_page 502 = /blank.html;
        proxy_pass http://tornado;
    }

    location = /blank.html {
        root /foo/bar;
    }
    
por 24.10.2010 / 21:30
0

Especifique "error_page" para todo o servidor, não para "location /"

    
por 29.09.2010 / 05:31

Tags