Puncte:0

Faceți ca Nginx să returneze o pagină de eroare personalizată când backend-ul este oprit

drapel in

Am Nginx care lucrează ca proxy invers și o aplicație Django în spatele lui. Aplicația Django este conectată la Nginx prin UWSGI. Aplicația Django este implementată folosind Docker și se oprește aproximativ o secundă în timpul implementării. Aș dori să îi instruiesc pe Nginx să returneze pagina de eroare 503 personalizată în acea perioadă.

Mai jos este configurația mea Nginx:

în amonte server_django {
    server 0.0.0.0:8000;
}

Server {
    asculta 443 ssl http2;
    asculta [::]:443 ssl http2;
    nume_server server.com;

    Locație / {
        # necesar pentru a servi materiale statice
        alias /data/server.com/website_root/;
        try_files $uri @django;
    }

    locație @django {
        uwsgi_pass server_django;
        includ /etc/nginx/uwsgi_params;
    }
}

Am încercat să adaug următoarea configurație în blocul „server”:

uwsgi_intercept_errors activat;
pagina_eroare 502 503 504 =503 @django_is_down;
locație @django_is_down {
    root /error_pages/server.com/;
    add_header Reîncercați-După 10 întotdeauna;
    index 503.html;
}

dar nu a ajutat, deoarece Nginx a continuat să servească pagina implicită 404 atunci când backend-ul este oprit.

Cum detectez când Django este inactiv în Nginx și servesc o pagină de eroare personalizată atunci când se întâmplă acest lucru?

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.