nginx-403

Nginx 403 Forbidden 的定位与修复

现象

浏览器或客户端收到 403 Forbidden。Nginx 能连上,但拒绝提供资源。常见于权限、目录索引、访问控制和 SELinux。

快速定位

tail -f /var/log/nginx/error.log
nginx -T | grep -nE 'root|alias|autoindex|deny|allow'
ls -ld /var/www/html
namei -l /var/www/html/index.html
getenforce
ausearch -m avc -ts recent

常见根因

  1. 文件或目录权限不足,Nginx worker 用户读不到。
  2. 目录缺少 index 文件,且未开启 autoindex。
  3. deny/allow 或 auth_basic 主动拒绝。
  4. SELinux 上下文不允许 Nginx 读取该路径。
  5. 符号链接指向了禁止访问的位置,或 disable_symlinks 生效。
  6. WAF/CDN 在 Nginx 之前返回 403。

修复

相关命令