Je télécharge un fichier de 26 Go, mais j'obtiens:
413 Request Entity Too Large
Je sais, cela est lié à client_max_body_size
, j'ai donc ce paramètre réglé sur 30000M
.
location /supercap {
root /media/ss/synology_office/server_Seq-Cap/;
index index.html;
proxy_pass http://api/supercap;
}
location /supercap/pipe {
client_max_body_size 30000M;
client_body_buffer_size 200000k;
proxy_pass http://api/supercap/pipe;
client_body_temp_path /media/ss/synology_office/server_Seq-Cap/tmp_nginx;
}
Mais je reçois toujours cette erreur lorsque le fichier entier a été téléchargé.
Modifier le fichier de configuration NGINX
Sudo nano /etc/nginx/nginx.conf
Recherchez cette variable: client_max_body_size
. Si vous le trouvez, augmentez simplement sa taille à 100M, par exemple. S'il n'existe pas, vous pouvez l'ajouter à l'intérieur et à la fin de http
client_max_body_size 100M;
Redémarrez nginx pour appliquer les modifications.
Sudo service nginx restart
Modifier le fichier PHP.ini pour les limites de téléchargement
Il n'est pas nécessaire sur toutes les configurations, mais vous devrez peut-être également modifier les paramètres de téléchargement PHP) pour vous assurer que rien ne sort des limites des configurations php.
Si vous utilisez PHP5-FPM, utilisez la commande suivante,
Sudo nano /etc/php5/fpm/php.ini
Si vous utilisez PHP7.0-FPM, utilisez la commande suivante,
Sudo nano /etc/php/7.0/fpm/php.ini
Trouvez maintenant les directives suivantes une par une
upload_max_filesize
post_max_size
et augmenter sa limite à 100M, par défaut ils sont 8M et 2M.
upload_max_filesize = 100M
post_max_size = 100M
Enfin, enregistrez-le et redémarrez PHP.
Les utilisateurs de PHP5-FPM l'utilisent,
Sudo service php5-fpm restart
Les utilisateurs de PHP7.0-FPM l'utilisent,
Sudo service php7.0-fpm restart
Cela fonctionnera bien !!!
Si vous téléchargez des fichiers de cette taille, vous devriez probablement tout simplement désactiver la vérification de la taille du corps avec:
client_max_body_size 0;
Avec égards, je ne sais pas pourquoi vous utilisez http pour transférer autant de données. J'ai tendance à faire mes gros transferts sur ssh
//such as:
tar cjf - /path/to/stuff | ssh user@remote-Host "cd /path/to/remote/stuff;tar xjf -"
... ce qui me donne un transfert compressé bzip. Mais si j'avais besoin de faire un transfert pouvant être repris, je pourrais utiliser sftp, lftp, voire rsync. Chacun de ces (ou leurs dérivés ou frères et sœurs) est capable de
Un seul d'entre eux serait une option pour vous lorsque vous tentez de télécharger sur http (à savoir, # 1 si vous étiez sur https).
J'espère que vous examinerez l'une des options ci-dessus ou plusieurs autres.