Maison > Article > développement back-end > Comment modifier la taille limite de téléchargement de fichiers en php
Comment modifier la limite de taille des fichiers de téléchargement PHP :
Téléchargement général de fichiers, sauf si le fichier est très petit. Comme pour un fichier de 5 Mo, le téléchargement prendra probablement plus d’une minute.
Mais en php, le temps d'exécution maximum par défaut de cette page est de 30 secondes. C'est-à-dire que s'il dépasse 30 secondes, le script cessera de s'exécuter.
Cela entraîne l'impossibilité d'ouvrir la page Web. A ce moment, nous pouvons modifier max_execution_time.
Regardez dans php.ini :
max_execution_time
La valeur par défaut est de 30 secondes, remplacez-la par :
max_execution_time = 0
0 Indique aucune limite.
Recommandations associées : "Tutoriel de démarrage PHP"
2. Modifiez post_max_size pour définir la taille maximale autorisée pour les données POST. Ce paramètre affecte également les téléchargements de fichiers.
post_max_size par défaut de php est 2M. Si la taille des données POST est supérieure à post_max_size, $_POST et $_FILES, les superglobales seront vides.
Recherchez post_max_size et remplacez-le par :
post_max_size = 150M
3. De nombreuses personnes modifieront la deuxième étape, mais la taille maximale lors du téléchargement de fichiers est toujours de 8 M.
Pourquoi ? Nous devons également modifier un paramètre upload_max_filesize pour indiquer la taille maximale du fichier téléchargé.
Recherchez upload_max_filesize, la valeur par défaut est 8M et remplacez-la par :
upload_max_filesize = 100M
De plus, il convient de noter que post_max_size est meilleur que upload_max_filesize.
4. Téléchargez l'erreur 413
La raison de cette erreur est que le corps de l'entité envoyé par le client est plus grand que ce que le serveur peut ou veut gérer. Dans des circonstances normales, nous ne pouvons pas voir ce code d'état. Parce que le navigateur n'enverra pas trop de données au site Web, mais le problème peut survenir dans l'interaction de l'interface entre les serveurs.
La raison pour laquelle nginx a ce problème est que l'entité de requête est trop longue. Cette situation se produit généralement lorsque les données Post du contenu Body dans la requête Post sont trop volumineuses, par exemple lors du téléchargement d'un fichier trop volumineux et contenant beaucoup de données POST.
Solution :
Ouvrez le fichier de configuration principal de nginx nginx.conf, recherchez la section http{}, modifiez ou ajoutez la valeur de client_max_body_size.
client_max_body_size 20m;
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!