J'utilise php5-fpm sous Nginx sur Ubuntu 14.04. Je souhaite augmenter la taille maximale de téléchargement.
J'ai modifié mon /etc/php5/fpm/php.ini
Pour définir les lignes suivantes comme suit:
upload_max_filesize = 20M post_max_size = 25M
et j'ai redémarré php5-fpm et nginx mais phpinfo()
affiche toujours les limites à 8M et 2M pour le post et le upload respectivement.
Y a-t-il quelque chose que j'ai manqué ici?
Le problème était avec le redémarrage de php5-fpm. Il semble qu'il y ait un bogue où parfois certains processus enfants ne se terminent pas au redémarrage. J'ai dû tuer manuellement les processus avec kill <process id>
les ayant identifiés avec ps -ef
.
J'ai ensuite pu redémarrer complètement php5-fpm qui a appliqué mes modifications de configuration.
Nginx
client_max_body_size
PHP
post_max_size
upload_max_filesize
Et redémarrez ou rechargez.
Source: http://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size
J'ai eu un problème avec le redémarrage alors j'ai juste tué le processus et l'ai démarré manuellement.
Sudo pkill php5-fpm
Sudo service php5-fpm start
Au lieu de changer le fichier php.ini, j'ajoute toutes les informations dans les fichiers disponibles sur les sites nginx. Je vois que vous avez obtenu votre réponse il y a longtemps, mais voici comment je le fais:
Dans mon hôte virtuel sous le bloc serveur {}, j'ai ajouté:
client_max_body_size 128m;
Puis à l'emplacement ~ .php $ {}, j'ai ajouté:
fastcgi_param PHP_VALUE "upload_max_filesize=128M \n post_max_size=128M";
Je sais que c'est une vieille question à laquelle on a déjà répondu. Mais je voulais commenter ici pour @harryg et d'autres qui viennent après moi.
Votre problème était de redémarrer php5-fpm en buggy. Au moment d'écrire ces lignes, le problème semble avoir été résolu, et redémarrer php5-fpm sur ubuntu est aussi simple que d'exécuter la commande suivante:
service php5-fpm restart
REMARQUE: j'utilise actuellement cette version de php5-fpm: PHP 5.5.9-1ubuntu4.9 (fpm-fcgi) (built: Apr 17 2015 11:44:58)
J'espère que quelqu'un trouve cela utile.
Il définit la taille maximale autorisée du corps de la demande client, spécifiée dans le champ d'en-tête de demande "Content-Length". Voici un exemple d'augmentation de la limite à 50 Mo dans /etc/nginx/nginx.conf
fichier.
Défini dans le bloc http qui affecte tous les blocs serveur (hôtes virtuels).
http {
...
client_max_body_size 50M;
}
Défini dans un bloc serveur, qui affecte un site/une application particulier
server {
...
client_max_body_size 50M;
}
Définir dans le bloc d'emplacement, qui affecte un répertoire particulier (téléchargements) sous un site/une application.
location /uploads {
...
client_max_body_size 50M;
}
Enregistrez le fichier et redémarrez le serveur Web Nginx pour appliquer les modifications récentes à l'aide de la commande suivante.
# systemctl restart nginx