含义
服务器理解了请求但拒绝授权。除非权限发生变化,重新登录也没有用。
常见原因
- 用户缺少所需的角色或权限范围
- IP 封禁、WAF 或机器人防护
- Web 服务器上的文件权限问题或缺少索引文件
解决方法
客户端或访问者
确认你的账户或令牌具有正确的权限或 scope。访问网站时,VPN、被封禁的 IP 或机器人验证都可能导致 403。
网站或 API 的维护者
检查文件所有者和权限、目录索引设置以及 WAF 规则。如果不想暴露资源是否存在,改为返回 404。
响应示例
HTTP/1.1
HTTP/1.1 403 Forbidden
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Content-Type: application/problem+json
{
"type": "about:blank",
"title": "Forbidden",
"status": 403,
"detail": "You do not have permission to delete this project."
} 规范
常见问题
› nginx 为什么返回 403 Forbidden?
常见原因:worker 进程无法读取文件、没有索引文件且未开启 autoindex,或者匹配到了 deny 规则。
› 私有资源应该返回 403 还是 404?
404 可以隐藏资源的存在;403 更直接。例如 GitHub 对私有仓库返回 404。