Maison >développement back-end >tutoriel php >Explication détaillée des étapes pour configurer la synchronisation des sessions du cluster Web en PHP

Explication détaillée des étapes pour configurer la synchronisation des sessions du cluster Web en PHP

php中世界最好的语言
php中世界最好的语言original
2018-05-17 10:15:393645parcourir

Cette fois, je vais vous donner une explication détaillée des étapes pour configurer la synchronisation de session de cluster Web en PHP Quelles sont les précautions pour configurer la synchronisation de session de cluster Web en PHP. ? Voici des cas pratiques, jetons-y un coup d'œil.

La session par défaut de PHP est le stockage de fichiers :

session.save_handler = files
session.save_path = "/var/lib/php/session"

Lorsqu'un cluster Web a besoin d'une synchronisation de session, c'est un bon moyen de sauvegarder la session dans un cache mémoire distribué pour obtenir une synchronisation partagée

Méthode :

Type 1 :

vi /etc/php.ini
session.save_handler = memcache
session.save_path = "tcp://192.168.20.193:11211,tcp://192.168.20.194:11211"

Type 2 Tapez :

Utilisez la fonction ini_set dans le fichier php pour la configuration, adaptée aux hôtes virtuels

qui ne peuvent pas modifier le
<?php
....
ini_set("session.save_handler", "memcache");
ini_set("session.save_path", "tcp://192.168.20.193:11211,tcp://192.168.20.194:11211");
....
?>
fichier de configuration

Redémarrez le serveur web

service httpd restart

Affichez phpinfo

Test login.php

en 192.168.20.193

user.php dans 192.168.20.194
<?php
session_start();
$_SESSION[&#39;login_time&#39;] = time();
$_SESSION[&#39;username&#39;] = &#39;test2&#39;;
$token=session_id();
echo $token;
//memache实现
$mem = new Memcache();
$mem->addServer(&#39;192.168.20.193&#39;,11211);
$mem->addServer(&#39;192.168.20.194&#39;,11211);
/*
//memached实现
$mem = new Memcached();
$servers = array(
 array(&#39;192.168.20.193&#39;, 11211, 33),
 array(&#39;192.168.20.194&#39;, 11211, 67)
);
$mem->addServers($servers);
*/
echo &#39;<hr>&#39;;
print_r($mem->get($token));
?>
<p>
<a href="http://192.168.20.194/user.php?token=<?php echo $token;?>" rel="external nofollow" target="_balnk">跳转到194网站的个人中心</a>
</p>

Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php !
<?php
$mem = new Memcache();
$mem->addServer(&#39;192.168.20.193&#39;,11211);
$mem->addServer(&#39;192.168.20.194&#39;,11211);
$token=$_GET[&#39;token&#39;];//获取传过来的token
print_r($mem->get($token));
?>
<p>
<a href="http://192.168.20.193/user.php?token=<?php echo $token;?>" rel="external nofollow" target="_balnk">返回193网站的个人中心</a>
</p>

Lecture recommandée :

Explication détaillée des étapes de fonctionnement de la base de données PHP+mongoDB


Analyse pratique de l'utilisation du cas de fermeture PHP


Sujet d'apprentissage du site Web chinois php

 : session php (comprenant des images, des textes, des vidéos, des cas)

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn