簡體   English   中英

nginx沒有顯示uwsgi的自定義錯誤頁面

[英]nginx is not showing custom error page with uwsgi

我正在嘗試為502和504答案添加自定義錯誤頁面。 當前,我的站點具有以下nginx配置(其他配置文件未更改):

server {
    listen       80;
    listen       [::]:80;

    server_name 10.12.112.163;

    add_header X-UA-Compatible "IE=Edge,chrome=1";
    add_header X-Content-Type-Options nosniff;
    add_header X-XSS-Protection "1; mode=block";

    charset utf-8;
    try_files $uri @icons;

    error_page 502 504 /502.html;
    location = /502.html {
       root /home/dmoj/site;
       internal;
    }

    location @icons {
        root /home/dmoj/site/resources/icons;
        error_page 403 404 = @uwsgi;
        log_not_found off;
    }

    location @uwsgi {
        uwsgi_read_timeout 600;
        uwsgi_pass unix:///tmp/dmoj-site.sock;
        include uwsgi_params;
    }
}

當我停下uwsgi並將瀏覽器轉到10.12.112.163時,會顯示nginx的默認“ 502 Bad Gateway”消息,但是當我轉到10.12.112.163/502.html時,我的頁面會完美顯示。

我也沒有internal指令對其進行了測試,它是相同的。

不知道它是否記錄在某處,但我不認為error_page可以鏈接到另一個error_page

在您的情況下, error_page 404try_files語句的行為非常相似。 有關詳細信息,請參見此文檔

因此,可以替換鏈接的error_page ,如下所示:

location @icons {
    root /home/dmoj/site/resources/icons;
    try_files $uri @uwsgi;
    log_not_found off;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM