web-dev-qa-db-fra.com

Quelles sont les causes de l'erreur 413 svn error Request Entity Too Large?

À l'occasion, je reçois une erreur "413 Request Entity Too Large" lors de la mise à jour d'un référentiel svn. Une fois que je reçois cette erreur, elle continue chaque fois que je tente de mettre à jour la copie de travail locale. Un nouveau paiement résoudra le problème, mais est très gênant. Le projet dépasse 30 Go et le référentiel SVN est hébergé en externe.

Cela s'est déjà produit par le passé sur plusieurs ordinateurs, y compris des ordinateurs de développement Windows et notre serveur de génération Linux.

La plupart de ce que j'ai trouvé à propos de ce problème concerne de gros fichiers individuels (plus de 2 Go). Ce n'est pas le cas ici, car les fichiers les plus volumineux ont une taille d'env. 50-60 MB.

Quelqu'un a-t-il déjà rencontré ce problème et/ou connaît-il la cause/la solution à ce problème?

55
Josh

Essayez d’ajouter les directives de configuration suivantes à votre fichier de configuration Apache:

LimitXMLRequestBody 8000000
LimitRequestBody 0
51
Ivan Zhakov

Je n'ai pas accès à mon serveur de référentiel (géré par l'informatique et ce week-end). Donc, ce que j’ai trouvé, c’est que je pouvais contourner ce problème en faisant une mise à jour de svn sur les sous-répertoires jusqu’à ce que l’un ne fonctionne pas . Ensuite, je pourrais faire une mise à jour à des niveaux plus élevés… .. Peut ne pas fonctionner pour tout le monde mais pourrait aider à passer au travers en cas d'urgence

35
mdh

Faites un court script bash pour parcourir les sous-répertoires, par réponse de mdh:

for dir in *; do
    [[ -e $dir ]] || continue
    echo "Updating $dir"
    svn up $dir
done
svn up
4
lucrussell

J'ai eu ce problème récemment avec n'importe quel fichier de plus de 10 Mo. J'ai oublié que je mandatais le serveur svn/Apache avec nginx. Changer client_max_body_size dans nginx.conf a résolu le problème. J'ai laissé LimitXMLRequestBody et LimitRequestBody sur le serveur Apache à leurs valeurs par défaut.

3
Matt Hovey

En outre, si vous exécutez mod_security, envisagez de vérifier votre paramètre SecRequestBodyLimit. Le mien était trop bas et causait le problème. 

1
tnorth

Voir aussi: RequestReadTimeout, qui limite le temps de lecture des en-têtes et du corps http://httpd.Apache.org/docs/2.2/mod/mod_reqtimeout.html

0
jreznot