Articles

Affichage des articles du juillet, 2018

Installer un module PHP supplémentaire

Image
Il existe de nombreuses extensions disponibles pou PHP. Mais celle-ci ne sont pas forcément installées par défaut. Aussi est il nécessaire de pouvoir les installer postérieurement à l'installation principale du serveur PHP comme décrite dans l'article intitulé " Créer un serveur PHP" . L'installation d'une extension PHP se fait en deux temps : d'abord il faut installer l'extension sous Rasbian, puis ensuite modifier le fichier php.ini pour configurer cette extension. Exemple d'installation d'une extension : gd  Parmi les extensions disponibles, l'une des plus intéressantes et des plus amusantes à utiliser est l'extension gd (Graphic Draw). Cette extension permet de générer et de manipuler des images par programmation. La documentation de cette extension est disponible à l'adresse : http://php.net/manual/fr/book.image.php . Installation de l'extension gd sous Rasbian L'installation de gd sous Rasbian se fait de...

Affinité de session et PHP

Image
Dans l'article intitulé " L'affinité de session  avec ClusterHAT ", nous avons vu comment configurer HaProxy pour implémenter l'affinité de session. C'est à dire, à maintenir un cookie de session valable tout au long de la navigation sur le site dans le cas où plusieurs serveurs différents peuvent répondre en équilibrage de charge. Lorsque l'internaute  arrive sur la première page du site, HaProxy, tel qu'il est configuré crée un cookie nommé CLUSTER auquel il donne la valeur Z1 , Z2 ou Z3 en fonction du serveur qui répond. Cela permet d'implémenter l'afinité de session. Or, de son coté, PHP a créé un cookie de session nommé PHPSESSID auquel est associée un objet session manipulé en PHP par la variable globale $_SESSION . Or, ces deux cookies ont le même rôle. L'objet du présent article est d'utiliser le cookies de PHP pour implémenter l'affinité de session. Description du problème Afin de mettre en évidence le problème nou...

L'affinité de session avec ClusterHAT

Image
De quoi s'agit-il ? Dans un article intitulé " Haute disponibilité et équilibrage de charge avec ClusterHAT ", on a vu qu'il était possible à plusieurs serveurs de répondre en fonction de leur charge respective à une même requête http. Seulement lorsqu'une transaction passe par la navigation dans plusieurs pages web, on risque de perdre les données de session, si ce n'est pas le même serveur qui répond d'une page l'autre. Comme vu dans un autre article, les sessions sont enregistrées dans le navigateur de l'internaute sous la forme d'un cookie. Or ce cookie est propre au serveur web qui en est à l'origine. Si, entre deux pages web, ce n'est pas le même serveur qui répond,  il y aura un cookie différent pour chaque serveur. Et si celui-ci est sensé porter les données d'une transaction la transaction a toutes les chances d'échouer. Il est donc important de s'assurer que le cookie est toujours valide tout au long de la...