Nginx访问服务器静态文件返回403 Forbidden错误如何解决
Nginx静态文件返回403错误的原因及解决方法
核心问题原因
你的Nginx运行用户为www-data,而个人用户目录/home/username的权限配置为drwxr-x---,该权限仅允许目录所有者和同组用户进入、读取目录内容,www-data默认不属于username用户组,因此无法进入/home/username目录读取下层的静态文件,触发403错误。
推荐解决方案
方案1:最小权限修改(推荐)
仅给其他用户开放个人目录的执行权限(仅允许进入目录,不开放读权限,不会泄露目录内其他文件内容),执行命令:
chmod o+x /home/username
修改后无需重启Nginx,直接刷新页面即可验证效果。
方案2:调整用户组
将Nginx运行用户加入username用户组,执行命令:
usermod -aG username www-data
修改完成后重启Nginx生效:
systemctl restart nginx
可选配置优化
你的静态资源location配置中alias路径建议末尾添加斜杠,避免路径拼接异常,修改后如下:
location /static/ { alias /home/username/webapp/static/; }
异常排查
如果修改后仍返回403,可查看Nginx错误日志定位具体问题:
cat /var/log/nginx/error.log
内容的提问来源于stack exchange,提问作者Chairman Meow
相关产品推荐
相关产品推荐

