You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django Web应用Axios报502错误(ERR_BAD_RESPONSE)求调试指导

502 Bad Gateway错误解析与调试指南

错误含义

502 Bad Gateway是HTTP状态码的一种,意思是网关/代理服务器从上游的后端服务器(这里就是你的Django服务)收到了无效的响应。简单说,前端用Axios发请求后,中间负责转发请求的网关(比如Nginx、Apache)没法从Django那边拿到合法的响应,只能返回502给前端。

错误归属

这属于后端/服务架构层面的错误,和前端代码无关——你已经回滚前端代码仍报错,也能证明这一点。Axios只是把服务器返回的502错误信息抛出来,本身不是问题根源。

调试步骤(按优先级排序)

既然代码回滚没用,且Django控制台日志没相关记录,重点排查网关、后端服务状态和服务器资源:

  • 检查网关的配置与日志
    • 查看网关(比如Nginx)的错误日志(比如Nginx的error.log文件),这里大概率能找到具体原因:比如网关无法连接到Django的WSGI服务(Gunicorn/uWSGI)、WSGI服务未启动,或者请求超时。
    • 确认网关配置里的后端地址(比如Nginx的proxy_pass指向的地址)是否正确,端口有没有被其他进程占用。
  • 验证Django后端服务的可用性
    • 在服务器本地直接测试Django服务:用curl http://127.0.0.1:你的Django端口/目标API路径,看是否能返回正常响应。如果本地请求也失败,说明Django服务本身有问题。
    • 查看WSGI服务(Gunicorn/uWSGI)的日志,很多时候Django自身日志没记录,但WSGI服务会输出启动失败、崩溃的详细信息。
  • 检查服务器资源状态
    • 查看服务器的CPU、内存、磁盘使用率,有没有资源耗尽的情况(比如内存不足导致OOM killer杀死了Django服务)。
  • 排查网络连通性
    • 如果网关和Django服务不在同一台机器,确认两台机器之间的端口是否开放,有没有防火墙、安全组拦截了请求。

内容的提问来源于stack exchange,提问作者anon bread

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 22:22:43