Lorsque vous rencontrez l’erreur 413 Request Entity Too Large, cela signifie généralement que vous avez essayé de télécharger un fichier trop volumineux sur votre serveur web. Cette erreur peut être corrigée en ajustant la configuration du serveur. La correction diffère selon la brique visée : WordPress, Nginx, Apache.
Pourquoi se produit l’erreur 413 ?
Cette erreur porte plusieurs noms : statut HTTP 413, Payload Too Large, Entité Trop Grande. Elle survient lorsque le client essaie d’envoyer un gros fichier au serveur qui dépasse la limite autorisée. Quelques exemples incluent :
- Télécharger des fichiers médias volumineux
- Soumettre des données de formulaire avec des pièces jointes importantes
- Effectuer des requêtes API avec de grandes charges utiles
- Utiliser des systèmes de gestion de contenu comme WordPress avec des limites de taille par défaut
Vous ne pouvez corriger cette erreur que sur un site dont vous avez la main sur la configuration. Si elle se produit sur un site web ou une application externe, vous devriez essayer de réduire la taille de votre fichier ou contacter leur propriétaire ou équipe d’assistance à la clientèle.
Comment résoudre l’erreur 413 ?
Le diagnostic se fait de la couche la plus externe vers la plus interne, sans quoi une limite corrigée reste masquée par une autre.
1. Identifier la couche qui refuse la requête
Trois couches peuvent renvoyer une 413 et chacune se corrige à un endroit différent : le serveur web (Nginx ou Apache), l’interpréteur PHP, un proxy placé devant le site. Le message d’erreur donne souvent l’indice. Une page d’erreur brute au style Nginx ou Apache désigne le serveur web. Un message d’erreur WordPress lisible pointe vers PHP. Une page aux couleurs de Cloudflare désigne le proxy.
2. Augmenter la limite sur Nginx
Nginx plafonne la taille du corps de requête avec la directive client_max_body_size, réglée sur 1 Mo par défaut. Ajoutez-la dans le bloc server du fichier de configuration du site. Pour l’appliquer à tous les sites de la machine, placez-la dans le bloc http de nginx.conf :
client_max_body_size 64M;
Testez la syntaxe avec nginx -t avant de recharger le service par systemctl reload nginx. Une valeur à 0 retire toute limite, ce qui expose le serveur aux envois massifs.
3. Augmenter la limite sur Apache
Apache utilise la directive LimitRequestBody, exprimée en octets, à placer dans le VirtualHost ou dans un fichier .htaccess à la racine du site :
LimitRequestBody 67108864
Cette valeur autorise 64 Mo. La directive accepte 0 pour illimité et rien n’oblige à redémarrer Apache si elle passe par un .htaccess, lu à chaque requête.
4. Ajuster les limites PHP pour WordPress
WordPress hérite des limites de PHP, visibles dans Médias puis Ajouter, sous la mention de taille maximale. Deux directives comptent dans php.ini :
upload_max_filesize: taille maximale d’un fichier envoyépost_max_size: taille maximale de la requête entière, qui doit rester supérieure ou égale à la précédente
Un post_max_size inférieur à upload_max_filesize annule silencieusement le second. Sur une pile PHP-FPM, rechargez le pool après modification. Ces valeurs ne servent à rien tant que le serveur web bloque en amont, d’où l’ordre de diagnostic.
5. Vérifier le proxy placé devant le site
Un site derrière Cloudflare hérite d’une limite d’envoi propre au proxy, indépendante de la configuration serveur : 100 Mo sur les plans Free et Pro, 200 Mo en Business, 500 Mo en Enterprise. Au-delà, la 413 vient de Cloudflare et aucune directive Nginx ne la lèvera. Trois contournements existent : découper l’envoi en morceaux plus petits, passer l’enregistrement DNS en mode DNS only pour ce sous-domaine, changer de plan. Le mode DNS only retire la protection Cloudflare sur le trafic concerné, ce qui se décide au cas par cas.
6. Télécharger manuellement le fichier via FTP
Cette méthode est recommandée en dernier recours pour les sites WordPress ou si vous avez accès à des serveurs Apache et Nginx.
- Récupérez vos identifiants FTP.
- Naviguez jusqu’au répertoire cible sur votre serveur en utilisant un client FTP.
- Faites glisser et déposez le fichier de votre ordinateur dans le répertoire du serveur distant dans le client FTP.
7. Contacter votre fournisseur d’hébergement
Si les méthodes précédentes ne fonctionnent pas ou si vous préférez ne pas modifier les fichiers du serveur ou utiliser FTP, contactez votre hébergeur. Ils possèdent l’expertise technique nécessaire pour effectuer les modifications nécessaires sans nuire à votre site web. Ils peuvent vérifier les limites de taille des fichiers ou les augmenter si nécessaire.
Il est recommandé de créer une sauvegarde de vos fichiers serveur avant d’essayer l’une de ces étapes.
Une limite relevée sans plafond reste une porte ouverte. Fixez une valeur qui couvre vos envois réels au lieu d’un plafond illimité : un formulaire public sans limite devient un vecteur de saturation disque.
