Python NGINX:将请求详细信息放在自定义404.json返回上

Python NGINX:将请求详细信息放在自定义404.json返回上,python,json,nginx,custom-error-pages,Python,Json,Nginx,Custom Error Pages,对于404s和500s/502s/504s错误,我将返回一个自定义JSON错误页面: { "response": { "status": "EXCEPTION_404_NOT_FOUND", } } 在我的站点enabled/service_nginx.conf中,我将其设置为: error_page 404 /404.json; location /404.json { internal; root /temp/error_re

对于404s和500s/502s/504s错误,我将返回一个自定义JSON错误页面:

{
    "response":
    {
            "status": "EXCEPTION_404_NOT_FOUND",
    }
}
在我的站点enabled/service_nginx.conf中,我将其设置为:

error_page 404 /404.json;
location /404.json {
    internal;
    root /temp/error_response_templates;
}
这很好用。也就是说,JSON每404返回一次。 但是我想将请求或一些请求细节添加到返回的JSON中。 例如,如果在遇到404的情况下, 我想在返回的JSON中包含param1和param2。像这样:

{
    "response":
    {
        "status":"EXCEPTION_404_NOT_FOUND",
        "param1":<param1 value>,
        "param2":<param2 value>,
    }
}
这可能吗?如果是,有人能帮我怎么做吗?
提前谢谢

您可以为每个错误代码设置如下内容:

  error_page 404 @404_json;

  location @404_json {
    default_type application/json;
    return 404 '{ "response": { "status": "EXCEPTION_404_NOT_FOUND",
    }, "message": "Not Found"}';
  }
或从文件中加载错误消息,例如:

try_files /404.json =404;
出于性能原因,建议在模板中添加