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

Ubuntu22.04部署Django遇502错误:blog.sock权限拒绝求助

解决Nginx访问Gunicorn Unix Socket权限拒绝的502错误

核心问题分析

从错误日志和权限信息来看,/home/glenn目录的权限为drwxr-x---(仅glenn用户及组拥有访问权限),而Nginx以www-data用户运行,无法进入该目录访问sock文件——这才是权限拒绝的根源,而非sock文件本身的权限配置。

具体修复步骤

1. 调整用户目录权限,允许www-data访问

执行以下命令,为/home/glenn目录添加其他用户的执行权限(执行权限允许用户进入目录):

chmod o+x /home/glenn

执行后,/home/glenn的权限会变为drwxr-x--x,此时www-data用户即可进入该目录访问sock文件。

2. 重启服务生效

  • 重启Gunicorn服务:
sudo systemctl restart gunicorn
  • 重启Nginx服务:
sudo systemctl restart nginx

备选方案:将www-data加入glenn用户组(可选)

若不想开放目录的其他用户权限,可将www-data用户加入glenn用户组:

sudo usermod -aG glenn www-data

执行后同样需要重启Gunicorn和Nginx服务。

配置文件确认

你的gunicorn.service和Nginx站点配置文件本身无问题:gunicorn已将sock文件的组设为www-data,且开放了对应权限,核心限制来自上级目录的访问权限。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 21:57:18