Problème compression à l'envoi, mod_deflate et php-fpm

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 !