Bonjour,
J’ai un problème étrange qui se produit lors de l’activation de la compression à l’envoi.
J’ai activer la compression à l’envoi dans mod_deflate d’apache dans le fichier
/etc/apache2/mods-enabled/deflate.conf
en ajoutant la directive SetInputFilter DEFLATE
Ce qui permet d’envoyer des requête HTTP dont le corps est compressé au serveur, et c’est le serveur qui s’occupe de la décompression automatiquement si dans l’entête HTTP et présent content-encoding : gzip
Ma requête HTTP est la suivante :
Entête envoyer en clair :
ContentType : "multipart/form-data; boundary=--c45c2453c1f4423dbfd4059e7dad8fbf"
Accept : "application/json"
accept-encoding="gzip" // Pour signaler que je veux la réponse au format compressé
"content-encoding"="gzip" // Pour signaler que la requête http est compressé à l'envoi
Corps envoyé compressé au serveur:
<RC>--c45c2453c1f4423dbfd4059e7dad8fbf<RC>Content-disposition: form-data;name=param1<RC><RC>val1<RC>--c45c2453c1f4423dbfd4059e7dad8fbf<RC>Content-disposition: form-data;name=param2<RC><RC>val2<RC>--c45c2453c1f4423dbfd4059e7dad8fbf<RC>Content-disposition: form-data;name=param3<RC><RC>val3<RC>--c45c2453c1f4423dbfd4059e7dad8fbf--<RC>
Je dois donc récupérer trois variables post coté php : param1:val1
, param2:val2
,param3:val3
Coté serveur j’ai un simple script php qui fait un var_dump($_POST)
Le problème c’est que l’envoi de la requête compressé, s’effectue bien, mais je n’ai que la première variable post dans le résultat c’est à dire param1:val1
!
Ou sont les 2 autres variables ???
J’ai donc effectué plusieurs tests dans des VM :
-
Test avec ubuntu server 19.10, avec apache 2.4.41, php-fpm 7.3 : problème -> param1:val1
-
Test avec ubuntu server 19.10, avec apache 2.4.41, mod_php 7.3 : cela fonctionne -> param1:val1, param2:val2,param3:val3
-
Test avec debian 10.3, avec apache 2.4.38, php-fpm 7.3 : problème -> param1:val1
-
Test avec debian 10.3, avec apache 2.4.38, mod_php 7.3 : cela fonctionne -> param1:val1, param2:val2,param3:val3
Pourquoi en php-fpm je n’ai qu’une seule variable POST ???
Est ce un bug ???
Merci pour votre aide !