You are not logged in.

Announcement

 Téléchargez la dernière version stable de GLPI      -     Et vous, que pouvez vous faire pour le projet GLPI ? :  Contribuer
 Download last stable version of GLPI                      -     What can you do for GLPI ? :  Contribute

#1 2023-02-13 18:05:51

tofou
Member
From: Saint-Lô
Registered: 2007-02-26
Posts: 87

Modification du comportement de IIS lors d'un "flush"

Bonjour tout le monde,
J'ai remarqué que IIS (en mode FastCGI) n'avait pas le même comportement lors des actions massives. IIS ne rafraîchit pas la barre d'avancement alors qu'avec Apache, cela fonctionne très bien...
Le principe est que IIS (ou plutot l'interface FastCGI) garde ce qu'il doit envoyer au navigateur jusqu'à ce que le script PHP s'arrête ou quand son buffer est à 4M°. C'est cela qui gène le rafraîchissement de la barre d'avancement (entre autres), car on arrive rarement à 4M° dans ce cas précis.
Après quelques recherches sur internet, j'ai trouvé cette petite procédure qui permet de mettre le buffer à 0.
Deux manipulations :
1° : En utilisant l'interface de IIS et en sélectionnant le serveur, puis choisir l'éditeur de configuration, la section est system.webServer/handlers. A droite de l'écran (volet des actions), vous devez déverrouiller cette section.
Ensuite :
2° : c:\Windows\System32\inetsrv\appcmd.exe set config "NOM_DU_SITE" /section:handlers "/[name='NOM_DONNE_A_PHP_FASTCGI'].ResponseBufferLimit:0".
On doit obtenir le message suivant :
Modifications de la configuration appliquées à la section "system.webServer/handlers" pour "MACHINE/WEBROOT/APPHOST/NOM_DU_SITE" dans le chemin de validation de la configuration "MACHINE/WEBROOT/APPHOST/NOM_DU_SITE"

Pour faire la deuxième modification avec l'éditeur de configuration, il faut se positionner sur le site et prendre l'éditeur de configuration et choisir system.webServer/handlers comme section. Sélectionner le premier élément (Collection) et choisir Modifier l'élément dans le volet des actions. Sélectionner alors la ligne concernant PHP et modifier ResponseBufferLimit dans la partie basse de l'écran. Quitter l'écran de modification et recliquer sur le site, il vous sera demander si vous voulez enregistrer les modifications. La modification sera prise en compte au bout de quelques secondes (pas besoin de redémarrer le site ou IIS).

Dans la foulée de cette modification et avec quelques tests, j'ai eu l'impression que les temps de réponses n'étaient pas plus mauvais et qu'effectivement les barres d'avancement semblaient mieux suivre les choses...
Si quelqu'un a déjà testé cette modification ?
Il ne faudrait pas qu'il y ait des résultats indésirables, je vais garder cela en test quelques temps et ne manquerait pas de donner des nouvelles...
Pour information, je suis en test sur un serveur hébergeant GLPI 9.3 et GLPI 10.0.
Cordialement,


GLPI : 9.3.4
OS : W2019 + IIS
php : 7.3.33, MariaDB : 10.5.24

Offline

Board footer

Powered by FluxBB