Maison >développement back-end >tutoriel php >Pourquoi mes paramètres GET longs sont-ils manquants dans PHP et comment puis-je y remédier ?
Limites de taille des paramètres GET côté serveur
En PHP, lors de l'accès à un serveur à l'aide de REST, les paramètres d'URL sont traditionnellement stockés dans le fichier global _GET . Cependant, les utilisateurs peuvent rencontrer des situations dans lesquelles un paramètre GET particulier n'apparaît pas dans ce global, bien qu'il soit présent dans la chaîne de requête. Tronquer la longueur du paramètre résout souvent ce problème, suggérant une potentielle restriction de taille.
Diagnostic et solution
Ce problème est en effet lié à une limitation de taille maximale dans certaines configurations PHP . Les versions PHP patchées avec Suhosin imposent une limite par défaut de 512 caractères pour les paramètres GET. Bien que les navigateurs et Apache prennent en charge des URL plus volumineuses, cette restriction peut empêcher l'accès aux paramètres longs.
Pour surmonter cette limitation, modifiez le fichier de configuration php.ini et ajoutez la ligne suivante :
suhosin.get.max_value_length = <limit>
Remplacer
Informations complémentaires
Il est important de noter que l'utilisation de longueurs de paramètres excessives n'est pas recommandée car elle peut avoir un impact sur les performances du serveur et créer des failles de sécurité. Pour les meilleures pratiques, gardez les paramètres GET concis et évitez de dépasser la limite recommandée.
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!