意義
伺服器理解請求但拒絕授權。除非權限改變,否則重新登入也沒用。
常見原因
- 使用者缺少所需的角色或權限範圍
- IP 封鎖、WAF 或機器人防護
- 網頁伺服器上的檔案權限問題或缺少索引檔
解決方法
用戶端或訪客
確認帳戶或權杖具備正確的權限或 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。