我想避免使用django和nginx不一致的错误页面。 如果一个静态文件没有find默认的nginx错误页面,而不是django的。 我认为这会导致性能不佳,将每个失败的请求redirect到gunicorn服务器,最终导致django错误页面。 我在哪里可以find默认的django错误页面,以及如何让nginx使用它们?
Django可以使用多种方式来编写和生成404页面。 AFAIK Django甚至可以在404错误期间渲染一些模板。
如果你想提供相同的页面,Django发送给你,你可以:
发送每个失败的请求gunicorn(这可以杀死你的performance)。
或生成一个失败的页面,将其存储在静态forms的某个地方(例如,用curl -o /var/www/errors/404.html http://your.site.com/404 ),并用
location /404.html { alias /var/www/errors/404.html } error_page 404 /404.html;
第一种方法将使您可以提供自定义的错误页面(关于缺less的URI)。 后一种方式会非常快速地传递错误页面,但是对于所有缺less的页面和URI,错误页面将是相同的。
这个select由你。