Código de status HTTP · Erros do servidor (5xx)
Erro 507 Insufficient Storage
O erro 507 Insufficient Storage significa que o servidor não concluiu o pedido porque não consegue guardar os dados que ele exige. A causa mais comum é disco cheio ou cota de armazenamento esgotada num servidor WebDAV, Nextcloud ou parecido durante um upload.
| Classe | 5xx, Erros do servidor |
|---|---|
| Definido em | RFC 4918 §11.5 |
| Pode ir para o cache por padrão | Só com Cache-Control ou Expires explícitos |
| Pode repetir o pedido | Não automaticamente; a RFC 4918 diz que um pedido do usuário só deve ser repetido por nova ação dele |
| Cabeçalhos relevantes | Nenhum específico deste código |
O que significa o 507
A RFC 4918, especificação do WebDAV, define o 507 na seção 11.5: o método não pôde ser executado porque o servidor não consegue armazenar a representação necessária para concluir o pedido. A RFC considera a condição temporária, mas acrescenta que, se o pedido veio de uma ação do usuário, ele não deve ser repetido até o usuário agir de novo, então o cliente não deve reenviar uploads em loop.
Fora do WebDAV, serviços de sincronização de arquivos e APIs de armazenamento usam 507 para "cota estourada", o que é mais preciso que 413 (este corpo específico é grande demais) ou 403. Uma curiosidade: os Application Load Balancers da AWS documentam o 507 para uma URL de redirecionamento longa demais, o que não tem nada a ver com espaço em disco.
Causas comuns
Se você está visitando o site
- Sua conta num serviço de armazenamento ou sincronização passou da cota.
- O servidor para onde você envia arquivos ficou sem espaço em disco para todo mundo.
Se você administra o servidor
- O volume de dados está cheio, muitas vezes por logs, pedaços temporários de upload ou backups antigos, e não por dados dos usuários.
- A cota por usuário ou por pasta no Nextcloud, ownCloud ou outro servidor WebDAV se esgotou.
- Os inodes acabaram mesmo com df -h mostrando espaço livre, por causa de milhões de arquivos pequenos.
Como resolver
Se você está visitando o site
- Apague arquivos ou esvazie a lixeira do serviço (a lixeira costuma contar na cota), ou aumente o plano.
- Se a sua cota está sobrando, avise o serviço: quem ficou sem espaço foi o servidor.
Se você administra o servidor
- Confira espaço livre e inodes livres (df -h e df -i) no volume em que a aplicação grava, e descubra o que cresceu com du -sh /caminho/* | sort -h.
- Faça rotação de logs, limpe os diretórios temporários de upload e tire os backups do volume de dados.
- Aumente ou ajuste a cota do usuário, e crie alerta de uso de disco antes de chegar a 100%.
Como enviar um 507
app.put('/files/:name', (req, res) => {
res.status(507).json({ error: 'Storage quota exceeded' });
});// app/files/[name]/route.ts
export async function PUT() {
return Response.json({ error: 'Storage quota exceeded' }, { status: 507 });
}mux.HandleFunc("PUT /files/{name}", func(w http.ResponseWriter, r *http.Request) {
w.Header().Set("Content-Type", "application/json")
w.WriteHeader(http.StatusInsufficientStorage) // 507
w.Write([]byte(`{"error":"Storage quota exceeded"}`))
})from fastapi import FastAPI, HTTPException
app = FastAPI()
@app.put("/files/{name}")
def upload_file(name: str):
raise HTTPException(status_code=507, detail="Storage quota exceeded")Costuma ser confundido com
- 507 vs 413
- O 413 Content Too Large indica que este corpo específico passa do limite de tamanho; o 507 indica que o servidor ou a sua cota não têm mais espaço, seja qual for o tamanho.
- 507 vs 508
- Os dois vêm da família de RFCs do WebDAV, mas o 508 trata de um laço infinito numa operação com Depth: infinity, não de armazenamento.
Perguntas frequentes
- Como resolver o erro 507 Insufficient Storage?
- Se é a sua conta, libere espaço ou esvazie a lixeira do serviço de armazenamento. Se você administra o servidor, confira df -h e df -i no volume de dados, limpe logs e arquivos temporários e aumente a cota se fizer sentido.
- O cliente deve tentar de novo depois de um 507?
- Não automaticamente. A RFC 4918 diz que, se o pedido veio de uma ação do usuário, ele não deve ser repetido até o usuário agir de novo, por exemplo depois de liberar espaço.
- O 507 é só para WebDAV?
- Ele foi definido na RFC do WebDAV, mas qualquer servidor HTTP pode usar. APIs de armazenamento e serviços de sincronização usam para erro de cota porque é mais específico que 403 ou 413.
Revisado em por Arielton Oberek.