【问题标题】:Displaying image in 500 status page (Django)在 500 状态页面中显示图像(Django)
【发布时间】:2017-06-12 16:05:28
【问题描述】:

我有一个使用 nginx 作为反向代理 Web 服务器的 Django 应用程序。我想在我的 500 错误页面中提供图像。如何在 Django 项目中做到这一点?


我尝试了here 的建议。 IE。我的 nginx 虚拟主机文件包含:

error_page 500 502 503 504 /500.html;
location = /500.html {
    root /home/myuser/myproject/myapp/templates/;
}

location = /500.png {
    root /home/myuser/myproject/myapp/static/img/;
}

请注意,500.png 确实位于/home/myuser/myproject/myapp/static/img/500.png。HTML 模板引用了 500 错误图像,如下所示:

<img src="500.png" alt=".">

但是,虽然 500 错误页面正确加载,但图像本身永远不会加载,回退到 img 标记中的 alt。我可能做错了什么?如有需要,请询问更多信息。

【问题讨论】:

    标签: django nginx http-status-code-500


    【解决方案1】:

    您正在尝试在当前目录上加载 500.png 图像。

    改为:

    <img src="/500.png" alt=".">
    

    【讨论】:

      【解决方案2】:
      {% load static %}
      <img src="{% static 'img/500.png' %}" alt=".">
      

      【讨论】:

        【解决方案3】:

        尝试删除 img url 中的尾部斜杠,

        error_page 500 502 503 504 /500.html;
            location = /500.html { root /home/myuser/myproject/myapp/templates; 
                    } 
            location = /500.png { root /home/myuser/myproject/myapp/static/img; 
                    }
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-05-13
          • 2015-05-17
          • 2018-07-12
          • 2021-11-15
          • 1970-01-01
          • 2018-11-13
          相关资源
          最近更新 更多