, , ,

Erreur lors de l'upload de gros fichiers

Lorsque l'utilisateur tente de pousser un fichier de grande taille sur le serveur (upload) le message suivant apparaît:

Une erreur s'est produite pendant l'envoi du fichier.
La taille du fichier dépasse la taille maximale.: (2048M)

Ce message est affiché alors que dans le cas présent, le fichier en posant problème pèse environ 1.7 Go. Il est donc sous la limite affichée par le message.

Les logs indiquent:

PHP Warning:  POST Content-Length of 1716983653 bytes exceeds the limit of 1073741824 bytes 
in Unknown on line 0

Ce comportement anormal peut être rectifié en définissant les variables memory_limit, post_max_size, upload_max_filesize telles que:

memory_limit > post_max_size > upload_max_filesize

Après modification, le fichier de configuration de l’hôte virtuel Apache contient les déclarations suivantes:

...

<IfModule mod_php5.c>
    ...
    php_admin_value memory_limit 2048M
    php_admin_value post_max_size 2046M
    php_admin_value upload_max_filesize 2000M
    ...
  </IfModule>

...

Recharger le fichier de configuration ou redémarrer le service apache2 pour prendre en compte les modifications apportées au fichier de configuration:

sudo service apache2 reload

Références