意味
URL は存在しますが、使われた HTTP メソッドに対応していません。Allow ヘッダーが使えるメソッドを示します。
よくある原因
- 静的ファイルや GET 専用ルートへの POST
- フォームの送信先エンドポイントが間違っている
- ルートが別のパス(末尾スラッシュ付きなど)でメソッドを定義している
対処法
クライアント・閲覧者の場合
Allow ヘッダーと API ドキュメントを確認し、メソッドと URL が合っているか確かめます。
サイトや API の運営者の場合
405 には必ず Allow を付けます。ルーティングの末尾スラッシュの違いや、静的ホスティングが API パスを処理していないか確認します。
レスポンス例
HTTP/1.1
HTTP/1.1 405 Method Not Allowed
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Allow: GET, HEAD, POST
Content-Type: application/problem+json
{
"type": "about:blank",
"title": "Method Not Allowed",
"status": 405,
"detail": "DELETE is not supported on /users."
} 仕様
よくある質問
› 405 と 404 の違いは?
404:ここには何もない。405:何かはあるが、このメソッドでは使えない。
› 静的ホストで POST すると 405 になるのはなぜ?
静的ホストは GET/HEAD しか扱いません。POST にはサーバーサイドの関数や外部のフォームサービスが必要です。