Pourquoi le téléchargement de mon fichier échoue-t-il lorsque « upload_max_filesize » est défini sur une valeur supérieure à « post_max_size » ?

Patricia Arquette
Libérer: 2024-10-28 12:41:02
original
411 Les gens l'ont consulté

Why Does My File Upload Fail When `upload_max_filesize` is Set Higher Than `post_max_size`?

Comprendre le rôle de post_max_size et upload_max_filesize en PHP

Lorsque vous travaillez avec des téléchargements de fichiers en PHP, il est crucial de comprendre l'interaction entre le Directives post_max_size et upload_max_filesize. Ces paramètres déterminent la taille maximale autorisée pour les téléchargements de fichiers, mais ils servent des objectifs distincts.

Définir la différence

  • upload_max_filesize : Ce La directive définit la limite de taille maximale pour les fichiers individuels en cours de téléchargement.
  • post_max_size : Cette directive spécifie la limite de taille maximale pour l'ensemble du corps de la requête HTTP, y compris toutes les données du formulaire et les fichiers téléchargés.

Impact sur les téléchargements de fichiers

Dans votre scénario, malgré la définition de upload_max_filesize sur 16 Mo, vous avez rencontré une erreur indiquant que post_max_size (8 Mo) a été dépassé. En effet, post_max_size limite la taille globale du corps de la demande, qui inclut le contenu du formulaire et tous les fichiers téléchargés.

Clarifier les limites

Pour clarifier, upload_max_filesize agit comme une limite sur la taille de chaque fichier individuel pouvant être téléchargé. Pendant ce temps, post_max_size impose une limite sur la taille cumulée de toutes les données pouvant être soumises dans la demande.

Comment envoyer des fichiers plus volumineux

Si vous devez télécharger des fichiers plus grand que ce que post_max_size autorise, vous ne pouvez pas augmenter upload_max_size. Au lieu de cela, vous devez ajuster post_max_size pour s'adapter à la taille du fichier plus grande.

Reconnaître le dépassement de post_max_size

Il convient de noter que PHP ne fournit pas d'indication claire lorsque post_max_size est dépassé. . Généralement, $_POST et $_FILES seront vides, mais $_SERVER['CONTENT_LENGTH'] sera différent de zéro. En surveillant cette combinaison, vous pouvez identifier quand post_max_size a été atteint.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!