Erreur 413 Request Entity Too Large sur des sites sous Plesk
Il arrive que j'ai des problèmes sur Plesk lorsque nginx est activé. Chaque requête POST retourne une « 413 Request Entity Too Large », empêchant les applications Web de fonctionner correctement.
Ce qui se passe
Pour chaque requête POST adressée à l'application Web, une réponse 413 Request Entity Too Large
est retournée, même lorsque le corps de la requête est vide ou très légerte :
413 Request Entity Too Large
nginx
Dans les paramètres du domaine, sous Paramètres Apache & nginx, la Maximum allowed HTTP request body size est définie à une valeur élevée (supérieure à la taille de la requête) :
Les requêtes et les erreurs n'apparaissent pas dans les logs du domaine :
Pourquoi cela se produit
Je n'arrive pas à le comprendre clairement, mais c'est évidemment lié à la configuration de nginx. Étant donné que les requêtes n'apparaissent pas dans le journal du domaine, je suppose qu'une configuration globale du serveur remplace les paramètres du domaine. La requête n'est même pas dirigé au vhost du domaine.
Comment le résoudre
Il est possible de contourner le problème en ajoutant une valeur globale client_max_body_size
dans un fichier de paramètres nginx plus global.
Cependant, cela remplacera tous les paramètres locaux par domaine définis dans Plesk dans la section Apache & nginx Settings.
Étape 1 : modifier le fichier par défaut de nginx
Connectez-vous par SSH au serveur et entrez la commande suivante pour modifier le fichier par défaut de nginx :
nano /etc/nginx/nginx.conf
Ajoutez la ligne suivante à la section http :
http {
[...]
client_max_body_size 512m;
}
Cela permettra une taille de publication de 512 Mo sur l'ensemble du serveur.
Étape 2 : redémarrez le serveur
systemctl reload nginx