507 Insufficient Storage
使い方
507 Insufficient Storage ステータスコードは、HTTP リクエストに対応するだけのストレージ容量がサーバーにないことを意味します。これは、通常であれば有効でクライアントのクォータ内に収まっている PUT や POST のリクエストが、サーバーのストレージが満杯であるために失敗する場合に該当します。このステータスは WebDAV 仕様の一部として設計されており、この状態は一時的なものと想定されています。
クライアントのリクエストは、別の操作によって後から要求されるまで繰り返してはなりません。
関連するクライアントエラーは 413 Content Too Large(「Payload Too Large」から改称)で、リクエストの内容がサーバーの定める制限を超えていることを示します。507 がサーバーのストレージが満杯であることを伝えるのに対し、413 は個々のリクエストボディがサーバーの処理する用意のある大きさを超えていることを意味します。
SEO への影響
検索エンジンは 507 を他の 5xx サーバーエラーと同じように扱います。障害が継続するとクロール頻度が低下し、最終的に該当する URL がインデックスから削除されます。
例
HTTP クライアントがファイルの転送を試み、サーバーのストレージ容量が尽きているため、サーバーは 507 Insufficient Storage ステータスコードで応答します。
リクエスト
PUT /docs HTTP/1.1
Host: example.com
Content-Type: application/pdf
Content-Length: 10000
<PDF file included in message body>
レスポンス
HTTP/1.1 507 Insufficient Storage
Content-Type: text/html
Content-Length: 181
<html>
<head>
<title>Insufficient Storage</title>
</head>
<body>
<p>The server has temporarily run out of
space and the file transfer failed.</p>
</body>
</html>
対処方法
リクエストの処理中にサーバーのストレージが尽きました。容量を回復させ、その後に再発を防止します。
即時の対処:
原因の診断:
再発の防止:
コードリファレンス
.NET
HttpStatusCode.InsufficientStorage
Rust
http::StatusCode::INSUFFICIENT_STORAGE
Rails
:insufficient_storage
Go
http.StatusInsufficientStorage
Symfony
Response::HTTP_INSUFFICIENT_STORAGE
Python3.5+
http.HTTPStatus.INSUFFICIENT_STORAGE
Apache HttpComponents Core
org.apache.hc.core5.http.HttpStatus.SC_INSUFFICIENT_STORAGE
Angular
@angular/common/http/HttpStatusCode.InsufficientStorage