PHP/Apache/AJAX : navigation dans les limites de taille POST
Votre requête met en évidence un problème lié à l'envoi de données POST volumineuses via AJAX. Bien que votre configuration PHP semble adéquate, vous avez rencontré un problème insaisissable. Pour résoudre ce problème, examinons les causes potentielles.
Limites Apache :
-
LimitRequestBody : Cette directive contrôle la taille maximale de le corps de la requête HTTP. Vérifiez sa valeur dans les journaux d'erreurs pour vous assurer qu'elle dépasse 2 millions de caractères.
Limites PHP :
-
post_max_size : Ce paramètre restreint directement la taille des données POST. Revérifiez cette valeur et envisagez de l'augmenter.
-
max_input_time : Si le traitement de la requête POST prend un temps excessif, ce paramètre peut provoquer des problèmes. Réglez-le sur -1 pour désactiver la limite de temps.
-
max_input_nesting_level : Ce paramètre limite la profondeur des structures de données imbriquées dans les requêtes POST.
-
memory_limit : Comme les données POST volumineuses peuvent consommer de la mémoire, assurez-vous que cette limite est suffisante pour gérer la taille de vos données.
Considérations supplémentaires :
-
Temps d'exécution maximum : Bien qu'il soit peu probable que ce soit le coupable, vérifiez que ce paramètre laisse suffisamment de temps pour le traitement des données.
-
Vars d'entrée maximales : Si vos données POST contiennent une grande nombre d'éléments, cette valeur devra peut-être être augmentée.
Stratégies d'atténuation :
Si le LimitRequestBody d'Apache est effectivement le facteur limitant, il peut être nécessaire de divisez vos données en morceaux plus petits pour la transmission. Cela peut être accompli via des scripts personnalisés ou en utilisant des techniques telles que le regroupement de fichiers.
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!