thiagosantos.com-413-Request-Entity-Too-Large

NGINX 413 Request Entity Too Large Error

Me deparei com uma "merendagem" na configuração do NGINX (nginx 413 request entity too large). Tentava enviar um arquivo encodado na base64 para um servidor recém inaugurado quando encontrei dificuldades para enviar alguns arquivos.  De inicio imaginei que pudesse ser um problema na origem, do servidor que estava enviando, debugando descobri que o CURL estava dando timeout por conta do enorme tamanho do arquivo e da pequena banda larga, resolvido neste post.

Depois de resolver esse problema, o arquivo continuava a não subir, até que analisando o log de retorno vi a linda mensagem: 413 Request Entity Too Large Error and Solution

Resposta melhor definida que essa só se viesse me dizendo "Thiago aumente o client_max_body_size no nginx.conf!". Esse é o lance, o tamanho padrão do client_max_body_size é de 1MB, ao menos nessa versão que compilei. O que fiz foi o seguinte:

Abri o arquivo nginx.conf

  1. thiago# /etc/nginx/nginx.conf
  2.  

Como quero que todos os sites tenham o mesmo limite coloquei dentro do http 

  1. http{
  2. [...]
  3. <strong>client_max_body_size</strong> 10M; #10mega bytes
  4. [...]
  5. }
  6.  

Se você quiser definir um tamanho maior ou menos para um determinado dominio você coloca dentro do arquivo *.conf do seu dominio, em server (que também pode estar definido dentro do nginx.conf).

  1. server {
  2. listen 80 ; ## listen for ipv4; this line is default and implied
  3. server_name hml.thiagosantos.com;
  4. set $root_path '/var/www/';
  5. root $root_path;
  6. charset off;
  7. <strong>client_max_body_size</strong> 10M;
  8. [...]
  9. }
  10.  

Reinicie o NGINX e tudo deve correr bem!
Lembrando que há outros programas que podem limitar o tamanho do body ou o do post, como o PHP. Há configurações especificas no php.ini para definir esses termos.

http://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>