Modes de paiement Abuse

Que signifie l'erreur 413 et comment la corriger ?

07.07.2024, 23:21

Dans de rares cas, il arrive que lors du téléchargement de fichiers volumineux sur un site web, une erreur soit renvoyée par le serveur web Nginx - 413 Request Entity Too Large (entité de requête trop volumineuse). Cette erreur apparaît lorsque vous essayez de télécharger sur le serveur un fichier dont la taille est supérieure à celle autorisée sur le serveur. Nous examinerons plus loin la description de l'erreur 413 Request Entity Too Large et les méthodes pour la corriger du côté du serveur web Nginx.

Ce que signifie l'erreur 413

L'erreur 413 ou Request Entity Too Large signifie "Request Entity Too Large" ou, en d'autres termes, la quantité de données transférées est trop importante. L'erreur est renvoyée lorsque le serveur ne peut pas traiter une requête parce que le corps de la requête (ou le fichier volumineux) est trop grand. Une capture d'écran de l'erreur est présentée ci-dessous :

Par défaut, Nginx limite la taille du corps de la requête à 1 Mo. Si la requête dépasse la valeur définie, vous verrez apparaître l'erreur 413 Request Entity Too Large.

Pourquoi l'erreur apparaît-elle ?

L'erreur 413 "Request Entity Too Large" se produit lorsqu'un serveur web rejette une requête parce que la taille du corps de la requête dépasse la taille maximale autorisée sur le serveur. Cela signifie que les données envoyées dans la requête (par exemple, lors du téléchargement d'un fichier sur le serveur) sont trop volumineuses pour être traitées.

Résolvez le problème :

  1. En modifiant les paramètres du serveur : vous pouvez essayer d'augmenter la taille maximale autorisée des requêtes sur le serveur. Pour ce faire, il peut être nécessaire de modifier les fichiers de configuration du serveur web - Apache, Nginx.
  2. En réduisant la taille des données : si possible, essayez de réduire la taille des données envoyées dans la requête. Par exemple, si vous téléchargez un fichier, essayez d'en réduire la taille.
  3. En utilisant d'autres méthodes de transfert de données : au lieu d'envoyer une seule requête volumineuse, vous pouvez diviser les données en plusieurs requêtes plus petites et les envoyer au fur et à mesure.
  4. Utiliser d'autres méthodes de transfert de fichiers : vous pouvez utiliser des services de partage de fichiers spécialisés ou le protocole FTP pour transférer des fichiers volumineux.

Si vous ne contrôlez pas le serveur auquel vous envoyez la demande, contactez l'administrateur de votre serveur ou le support technique pour obtenir de l'aide dans la résolution de l'erreur 413 "Request Entity Too Large".

Comment résoudre l'erreur

Pour résoudre l'erreur 413, vous devez augmenter la limite autorisée. Vous pouvez augmenter la taille du corps de la requête et, par conséquent, la taille des fichiers téléchargés en utilisant l'option client_max_body_size. Cette option peut être utilisée dans les directives http, server ou location du fichier de configuration /etc/nginx/nginx.conf ou dans le fichier de configuration du site web.

Ouvrez le fichier de configuration nginx.conf à l'aide d'un éditeur de texte :

$ sudo nano /etc/nginx/nginx.conf

Saisissez une ligne dans la section http :

$ client_max_body_size 100M

100 - la taille maximale du fichier en mégaoctets qui peut être téléchargé sur le site web, dans ce cas 100 mégaoctets. Si vous disposez de plusieurs sites web et qu'il est nécessaire de restreindre le téléchargement à tous les sites web à la fois, la ligne client_max_body_size doit être saisie dans la section http block.

S'il est nécessaire de restreindre le téléchargement uniquement pour un site particulier, la ligne client_max_body_size doit être ajoutée au bloc serveur du fichier de configuration du site, qui se trouve par défaut dans /etc/nginx/sites-available/nom_du_fichier_avec_configuration:

Lorsqu'une limite de téléchargement doit être fixée uniquement pour une section spécifique d'un site, la chaîne client_max_body_size doit être ajoutée à la directive location du fichier de configuration du site, qui se trouve par défaut dans /etc/nginx/sites-available/file_name_with_configuration:

Une fois les modifications apportées aux fichiers de configuration, enregistrez-les, fermez l'éditeur de texte et vérifiez la syntaxe des fichiers de configuration à l'aide de la commande :

$ sudo nginx -t

Vous verrez peut-être les lignes suivantes :

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Cela signifie qu'il n'y a pas d'erreurs. Sinon, vous verrez une description de l'erreur, le nom du fichier où l'erreur a été trouvée et le numéro de ligne. Après avoir apporté des modifications aux fichiers de configuration de Nginx, vous devez les redémarrer à l'aide de la commande :

$ sudo systemctl reload nginx

Cet article traite d'une erreur de Nginx connue sous le nom de 413 Request Entity Too Large, qui se produit lors du téléchargement de fichiers volumineux sur un site web. En plus de la description de l'erreur elle-même, les étapes pour corriger l'erreur en modifiant les fichiers de configuration de Nginx ont également été décrites.