


Comment résoudre le problème selon lequel PHP ne parvient toujours pas à télécharger des fichiers volumineux ?
PHP ne parvient toujours pas à télécharger des fichiers volumineux, mais il n'y a aucun problème lors du téléchargement de petits fichiers. Au début, j'étais perplexe, mais finalement j'ai vérifié les informations pertinentes en ligne et compilé un article sur les raisons et les solutions à l'échec de PHP à télécharger des fichiers volumineux. Je l'ai partagé avec tout le monde. J'espère qu'il vous plaira.
Voici diverses raisons et solutions :
Cas 1 : Le répertoire temporaire dans lequel le fichier est stocké lors du téléchargement du fichier doit être ouvert et accessible à l'utilisateur propriétaire du processus PHP Écrit annuaire. Si rien n'est spécifié, PHP utilise la valeur par défaut du système.
Upload_tmp_dir dans le fichier php.ini est utilisé pour décrire le répertoire temporaire dans lequel sont placés les fichiers téléchargés par PHP. Si vous souhaitez télécharger des fichiers, vous devez vous assurer que le serveur n'a pas fermé le fichier temporaire et dispose de l'autorisation d'écriture sur le fichier. dossier.
Cas 2 : La valeur de max_execution_time doit être suffisamment grande. La variable max_execution_time définit le temps, mesuré en secondes, pendant lequel PHP attend la fin du script avant de le terminer de force. Cette variable est utile lorsque le script entre dans une boucle infinie. Cependant, cette fonctionnalité peut également provoquer l'échec de l'opération lorsqu'il existe une activité légitime qui prend beaucoup de temps (telle que le téléchargement d'un fichier volumineux). Dans de tels cas, vous devez envisager d'augmenter la valeur de cette variable pour empêcher PHP d'arrêter le script pendant que celui-ci exécute un processus important, comme le définir sur 90 secondes.
max_execution_time = 90
Notez qu'il existe également une fonction set_time_limit dans la fonction php, qui a le même effet que le paramètre ci-dessus. La différence entre les deux est que ce qui précède est défini dans le fichier php.ini, tandis que set_time_limit est écrit dans le fichier php. Par conséquent, vous pouvez également définir la durée d'exécution maximale du programme en utilisant set_time_limit sur la page. Par exemple, durée illimitée : set_time_limit(0);
Cas 3 : file_uploads = On, ce qui signifie qu'il est autorisé à transmettre le téléchargement de fichiers HTTP, cette option ne peut pas être définie sur OFF.
Cas 4 : upload_max_filesize = 2M définit la taille maximale de téléchargement de fichier. La taille de téléchargement de fichier par défaut dans le fichier de configuration php.ini est de 2 M. Une erreur que font souvent les débutants en PHP est d'écrire des fichiers. vous définissez la zone de formulaire pour la taille maximale du fichier téléchargé, c'est-à-dire la valeur maximale du fichier pouvant être téléchargé, et la valeur de max_file_size (champ de valeur cachée) pour spécifier la taille du fichier téléchargé. généralement, d'autres peuvent contourner cette valeur, donc pour des raisons de sécurité, il est préférable de configurer l'option upload_max_filesize dans le fichier de configuration php.ini pour définir la taille du téléchargement du fichier. La valeur par défaut upload_max_filesize = 2M, c'est-à-dire que la taille de téléchargement du fichier est de 2M. Si vous souhaitez télécharger des fichiers dépassant 8M, par exemple 20M, vous devez définir upload_max_filesize = 20M.
Cas 5 : post_max_size Cette valeur doit également être suffisamment grande. Cette variable est également une variable liée à la soumission du formulaire. Elle limite la quantité maximale de données que le programme PHP peut recevoir lorsque le client soumet un formulaire via la méthode POST. En général, cette valeur peut être légèrement supérieure à upload_max_filesize. Par exemple, si vous souhaitez télécharger un fichier de 20 Mo, cette valeur peut être définie sur 21 Mo.
Cas 6 : max_input_time Cette variable peut limiter le temps de réception des données via POST, GET et PUT en secondes. Si l'application s'exécute dans un environnement avec un réseau lent, vous devez augmenter cette valeur pour augmenter le temps requis pour recevoir les données, par exemple, définissez cette valeur sur 90 secondes.
max_input_time = 90
Cas 7 : memory_limit doit également être suffisamment grand. Afin d'éviter que l'exécution de scripts n'utilise une grande quantité de mémoire système disponible, PHP permet de définir des limites d'utilisation de la mémoire. Utilisez la variable memory_limit pour spécifier la capacité de mémoire maximale qu'un seul script peut utiliser. La valeur de la variable memory_limit doit être correctement supérieure à la valeur de post_max_size.
Scénario 8 : De plus, si votre hôte est un système d'exploitation nginx, si les opérations ci-dessus ne fonctionnent pas, pensez à ajouter client_max_body_size 20m dans le fichier de configuration nginx. Cette phrase signifie que le téléchargement maximum autorisé est de 20 Mo ; , en fonction de votre propre situation. L'emplacement de mon fichier de configuration nginx est /usr/local/nginx/conf/nginx.conf.
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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Pour travailler avec la date et l'heure dans cakephp4, nous allons utiliser la classe FrozenTime disponible.

CakePHP est un framework open source pour PHP. Il vise à faciliter grandement le développement, le déploiement et la maintenance d'applications. CakePHP est basé sur une architecture de type MVC à la fois puissante et facile à appréhender. Modèles, vues et contrôleurs gu

Pour travailler sur le téléchargement de fichiers, nous allons utiliser l'assistant de formulaire. Voici un exemple de téléchargement de fichiers.

Le validateur peut être créé en ajoutant les deux lignes suivantes dans le contrôleur.

Visual Studio Code, également connu sous le nom de VS Code, est un éditeur de code source gratuit – ou environnement de développement intégré (IDE) – disponible pour tous les principaux systèmes d'exploitation. Avec une large collection d'extensions pour de nombreux langages de programmation, VS Code peut être c

CakePHP est un framework MVC open source. Cela facilite grandement le développement, le déploiement et la maintenance des applications. CakePHP dispose d'un certain nombre de bibliothèques pour réduire la surcharge des tâches les plus courantes.

Ce tutoriel montre comment traiter efficacement les documents XML à l'aide de PHP. XML (Language de balisage extensible) est un langage de balisage basé sur le texte polyvalent conçu à la fois pour la lisibilité humaine et l'analyse de la machine. Il est couramment utilisé pour le stockage de données et
