Nginx client_max_body_size padrão


101

Tenho recebido o erro nginx:

413 Request Entity Too Large

Consegui atualizar meu client_max_body_sizena seção do servidor do meu arquivo nginx.conf para 20M e isso corrigiu o problema. No entanto, qual é o nginx padrão client_max_body_size?

Respostas:


143

O valor padrão para a client_max_body_sizediretiva é 1 MiB .

Ele pode ser definido em http, servere locationcontexto - como nas maioria dos casos , esta directiva em um bloco aninhado tem precedência sobre a mesma directiva nos blocos antepassados .

Trecho da documentação ngx_http_core_module :

Syntax:   client_max_body_size size;
Default:  client_max_body_size 1m;
Context:  http, server, location

Define o tamanho máximo permitido do corpo da solicitação do cliente, especificado no campo do cabeçalho da solicitação “Content-Length”. Se o tamanho em uma solicitação exceder o valor configurado, o erro 413 (Solicitação de entidade muito grande) é retornado ao cliente. Esteja ciente de que os navegadores não podem exibir esse erro corretamente. Definir o tamanho como 0 desativa a verificação do tamanho do corpo da solicitação do cliente.

Não se esqueça de recarregar a configuração por nginx -s reloadou service nginx reloadcomandos precedidos de sudo(se houver).


2
Chegando tarde, observe que você deve usar nginx -tpara testar sua configuração antes de executar nginx -s reloadpara aplicar as alterações de configuração. Ele não pode garantir que sua configuração esteja correta, mas detectará erros de sintaxe ou valores inválidos.
— kungphu

2
Sim, mas em qualquer caso, nginx -s reloadnão aplicará uma configuração sintaticamente incorreta, mas relatará um erro.
— ruvim

Qual é o valor máximo que o Nginx suporta para esta diretiva? Não há nada nos documentos. Apache suporta 2 GB no máximo .
— Dan Dascalescu

@DanDascalescu, o valor máximo depende do off_ttamanho do tipo (consulte ngx_http_core_module.h). No caso do executável de off_t64 bits , o tamanho é 64 bits e o valor máximo deve ser 2 ^ 63 bytes.
— ruvim

19

A resposta de Pooja Mane funcionou para mim, mas eu tive que colocar a variável client_max_body_size dentro da seção http .

insira a descrição da imagem aqui


15

Você pode aumentar o tamanho do corpo no arquivo de configuração nginx como

sudo nano /etc/nginx/nginx.conf

client_max_body_size 100M;

Reinicie o nginx para aplicar as alterações.

sudo service nginx restart


10
Por que 100 milhões? Por que não 100G? Sua resposta melhoraria se você acrescentasse uma justificativa.
— Hassan Baig

11
Sim, 42M seria melhor.
— Evgeni Nabokov

4
defina-o como 0 para unlimit
— morteza moradi
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.