405 Method Not Allowed 表示伺服器認得這個要求方法,但目標資源不支援它。回應中必須包含 Allow 標頭,列出該資源支援的方法,例如 Allow: GET, HEAD, OPTIONS。
典型的情況包括對靜態檔案發出 POST、對唯讀的 API 資源發出 DELETE,或對只接受表單送出的端點發出 GET。如果伺服器完全不認得這個方法,正確的回應則是 501 Not Implemented。
405 可依經驗法則快取。
回應範例
HTTP
HTTP/1.1 405 Method Not Allowed
Date: Fri, 06 Nov 2026 10:15:32 GMT
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Content-Length: 30
{"error":"method_not_allowed"} SEO 與重新導向檢查
對一般 GET 要求回應 405 屬於 4xx 錯誤,會導致網頁無法編入索引。不過問題更常出現在其他方法上:有些伺服器和框架會對 HEAD 回應 405,讓為了節省頻寬而使用 HEAD 的連結檢查工具與監控工具誤判。如果將要求方法設為 HEAD 時檢查結果為 405,改用 GET 卻得到 200,就代表伺服器沒有正確處理 HEAD,儘管 HTTP 規定通用伺服器必須支援它。
常見原因與使用情境
- 表單或 API 用戶端對只提供靜態內容的網址發出 POST;nginx 會以「405 Not Allowed」回應這類要求。
- 框架的路由只定義了
GET,因此HEAD、POST或PUT都會遭到拒絕。 - 重新導向保留了要求方法:經過 307 或 308 之後,
POST仍是POST,可能因此抵達只接受GET的網頁。 - 伺服器設定中停用了 WebDAV 或其他方法。