Erreur: client destiné à envoyer un corps trop volumineux

J’utilise django-resto pour télécharger mes fichiers multimédia sur le serveur distant. Cependant, lorsque j’ai essayé de télécharger, cela me donne django_resto.storage: Failed on create .

Et journal généré sous les messages,

 open() "/var/www/media/media/events/video/clipcanvas_14348_H264_640x360.mp4" failed (2: No such file or directory), client: 172.17.42.1, server: , request: "HEAD /media/events/video/clipcanvas.mp4 HTTP/1.1", host: "IP:8081" client intended to send too large body: body: 2139606 bytes, client: *.*.*.*, server: , request: "PUT /media/events/video/clipcanvas.mp4 HTTP/1.1", host: "IP:8081" 

Quelqu’un peut-il s’il vous plaît expliquer pourquoi je reçois une telle erreur?

Paramètres pour le serveur multimédia,

 DEFAULT_FILE_STORAGE = 'django_resto.storage.DissortingbutedStorage' RESTO_MEDIA_HOSTS = ['IP:8081'] 

Configuration Nginx,

 server { listen 192.168.0.10; location / { root /var/www/media; dav_methods PUT DELETE; create_full_put_path on; dav_access user:rw group:r all:r; allow 192.168.0.1/24; deny all; } } 

Ce problème sera causé par la valeur par défaut de client_max_body_size (1 Mo).

Vous devrez définir la client_max_body_size dans un des blocs de contexte suivants:

  • http
  • emplacement
  • serveur

Le code sera quelque chose comme ceci:

 server { # set the max body size across the site to be 20mb client_max_body_size 20m; } 

Personnellement, je placerais le client_max_body_size sur un bloc d’ location . Cela signifie que votre nouvelle taille maximale ne sera pas définie globalement et définie pour un sous-emplacement particulier de votre site Web.

 server { # site default is 1mb client_max_body_size 1m; location /user/profiles/upload { # profile images should be no more than 2m client_max_body_size 5m; # the rest of your website will still use 1m max body size } } 

remarque: n’oubliez pas que vous devrez recharger votre fichier de configuration avant que les modifications ne prennent effet.

notez également: vous ne faites que la client_max_body_size vous avez besoin plus un peu. Arrête les personnes qui envoient des fichiers massivement énormes pour tenter de paralyser votre serveur.