En casos raros, pero sucede que al subir archivos de gran tamaño a un sitio web, un error es devuelto por el servidor web Nginx - 413 Solicitud Entidad Demasiado Grande. El error aparece cuando se intenta subir un archivo al servidor que es demasiado grande de lo que está permitido en el servidor. A continuación veremos la descripción del error 413 Request Entity Too Large y los métodos para solucionarlo en el servidor web Nginx.
El error 413 o Request Entity Too Large significa "Request Entity Too Large" o, en palabras simples, la cantidad de datos que se están transfiriendo es demasiado grande. El error se devuelve cuando el servidor no puede procesar una solicitud porque el cuerpo de la solicitud (o archivo grande) es demasiado grande. A continuación se muestra una captura de pantalla del error:
Por defecto, Nginx tiene un límite de tamaño del cuerpo de la petición de 1MB. Si la petición excede el valor establecido, verá el error 413 Request Entity Too Large.
El error 413 "Request Entity Too Large" se produce cuando un servidor web rechaza una petición porque el tamaño del cuerpo de la petición excede el tamaño máximo permitido establecido en el servidor. Esto significa que los datos enviados en la solicitud (por ejemplo, al cargar un archivo en el servidor) son demasiado grandes para procesarlos.
Solucione el problema:
Si no controla el servidor al que envía la solicitud, póngase en contacto con el administrador del servidor o con el servicio de asistencia técnica para que le ayuden a resolver el error 413 "Entidad de solicitud demasiado grande".
Para solucionar el error 413, debe aumentar el límite permitido. Puede aumentar el tamaño del cuerpo de la solicitud y, en consecuencia, el tamaño de los archivos cargados utilizando client_max_body_size
. La opción está disponible para su uso en las directivas http, server o location en el archivo de configuración /etc/nginx/nginx.conf
o en el archivo de configuración del sitio web.
Abre el archivo de configuración nginx.
conf utilizando cualquier editor de texto:
$ sudo nano /etc/nginx/nginx.conf
Escribe una línea en la sección http:
$ client_max_body_size 100M
100 - el tamaño máximo de archivo en megabytes que se puede subir al sitio web, en este caso 100 megabytes. Si hay varios sitios web a su disposición y es necesario restringir la subida a todos los sitios web a la vez, entonces la línea client_max_body_size
debe introducirse en la sección http block.
Si es necesario restringir la descarga sólo para un sitio en particular, la línea client_max_body_size
debe añadirse al bloque del servidor del archivo de configuración del sitio, que por defecto se encuentra en /etc/nginx/sites-available/file_name_with_configuration
:
Cuando es necesario establecer un límite de descarga sólo para una sección específica de un sitio, debe añadirse la cadena client_max_body_size
a la directiva location
del archivo de configuración del sitio, que se encuentra por defecto en /etc/nginx/sites-available/file_name_with_configuration
:
Una vez realizados los cambios en los archivos de configuración, guárdelos, cierre el editor de texto y compruebe si hay errores en la sintaxis de los archivos de configuración mediante el comando:
$ sudo nginx -t
Es posible que vea las siguientes líneas:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Esto significa que no hay errores. De lo contrario, verás una descripción del error, el nombre del archivo donde se encontró el error y el número de línea. Después de hacer cualquier cambio en los archivos de configuración de Nginx, debes reiniciarlos usando el comando:
$ sudo systemctl reload nginx
Este artículo cubrió un error en Nginx conocido como 413 Request Entity Too Large, que ocurre cuando se suben archivos grandes a un sitio web. Además de describir el error en sí, también se describieron los pasos para solucionar el error editando los archivos de configuración de Nginx.