204 No Content は、サーバーがリクエストを処理し、追加で送るコンテンツがないことを示します。204 にはボディを含めることができず、レスポンスはヘッダーの後の空行で終わります。それでもヘッダーには意味があり、要求された操作を適用した後の対象リソースについて記述します。
API で成功した PUT、PATCH、DELETE リクエスト、アクセス解析のビーコン、CORS のプリフライト(OPTIONS)リクエストへの応答でよく使われます。204 を返す URL にブラウザーが移動しようとしても、現在のページから離れることはありません。
204 はヒューリスティックにキャッシュ可能です。
レスポンス例
HTTP
HTTP/1.1 204 No Content
Date: Fri, 06 Nov 2026 10:15:32 GMT
Access-Control-Allow-Origin: https://app.example.com
Access-Control-Allow-Methods: GET, POST, OPTIONS
Access-Control-Allow-Headers: Content-Type, Authorization
Access-Control-Max-Age: 86400 SEO とリダイレクトチェック
Google によると、204 は Googlebot がコンテンツを受け取らなかったことをインデックス処理に伝えるもので、Search Console ではソフト 404 として報告されることがあります。インデックスさせたいページで 204 を返してはいけません。リダイレクトチェックでチェーンの最後が 204 になっている場合、その URL はたいていページではなく、トラッキング用や API のエンドポイントです。
よくある原因と主な用途
- API がリソースを削除または更新し、返すものがない場合。
- CORS のプリフライト(
OPTIONS)リクエストが承認された場合。 - アクセス解析や
navigator.sendBeacon()のエンドポイントがデータを受領した場合。 - ルーティングの設定ミスで、ページの URL が 204 を返している場合。コンテンツ付きの 200 か、適切な 404 を返してください。