PHPでmemcacheを使用してセッションを格納する3つの構成方法
1、php.iniプロファイルを直接修正する
2、ディレクトリの下の.htaccessファイル構成を利用する
説明:これはApache向けのもので、現在はNginxが使われていることが多く、この方式もお勧めしません.
3、プロジェクトのPHPファイルで構成を変更する
ini_set("session.save_handler", "memcache");
ini_set("session.save_path", "tcp://127.0.0.100:11211");
4、試験例
上はただいくつかの簡単な説明ですが、実は問題外の話をして、一般的には、分布式をして、それはサーバーの権限があるに違いありませんので、1つ目をお勧めします.
session.save_handler = memcache // session memcache
memcache.hash_strategy = "consistent"// memcache hash
session.save_path = "tcp://127.0.0.100:11211" // session , memcache , :tcp://127.0.0.1:11211,tcp://127.0.0.1:12000
2、ディレクトリの下の.htaccessファイル構成を利用する
php_value session.save_handler "memcache"
php_value session.save_path "tcp://127.0.0.1:11211"
説明:これはApache向けのもので、現在はNginxが使われていることが多く、この方式もお勧めしません.
3、プロジェクトのPHPファイルで構成を変更する
ini_set("session.save_handler", "memcache");
ini_set("session.save_path", "tcp://127.0.0.100:11211");
4、試験例
// session
session_start();
$_SESSION['username'] = "jb51.net";
echo session_id();
// Memcache session
$m = new Memcache();
$m->connect('localhost', 11211);
//
//$mem->addServer("127.0.0.1", 11211) or die ("Can't add Memcache server 127.0.0.1:12000");
// session_id
//
//$session = $m->get(session_id()); //session_id:d527b6f983bd5e941f9fff318a31206b
// , session id
$session = $m->get("d527b6f983bd5e941f9fff318a31206b");
echo $session."<br/>"; // :username|s:16:"pandao";,
echo session_id()."<br/>";
exit;
上はただいくつかの簡単な説明ですが、実は問題外の話をして、一般的には、分布式をして、それはサーバーの権限があるに違いありませんので、1つ目をお勧めします.