将session保存到memcache
步骤:
修改php.ini的配置文件
如下:
;[sesson.save_handler 有user|files|memcache]
session.save_handler = memcache
session.save_path = "tcp://127.0.0.1:11211"
测试一把,重启apache
如果管理员,不让我们修改 php.ini 文件,我们如何处理session入memcached这个功能, 我们通过一个函数可以去修改 php.ini 的配置.
代码:
<?php
ini_set("session.save_handler","memcache");
ini_set("session.save_path","tcp://127.0.0.1:9999");
同时你也可以通过 ini_set 去动态的修改对php.ini 的其它设置 。但是他不影响其它php页面,也不会去修改php.ini 文件本身, 只对本页面生效.
<?php ini_set("session.save_handler","memcache"); ini_set("session.save_path","tcp://127.0.0.1:9999"); //传统的代码 session_start(); $_SESSION['name']='4000'; $_SESSION['city']='beijing'; class Dog{ public $name; } $dog1=new Dog; $dog1->name='abcde'; $_SESSION['dog']=$dog1; //如果session数据入mem,那他一定是以session_id为 //key值进行添加 //取出 $name=$_SESSION['name']; echo "name=$name"; echo "sessionidu=".session_id();
u memached安全性,本身没有自己的安全机制,需要注意。
如何使用memcached 服务才是安全的.
在windows下通过启用防火墙来保护我们的memcached,原理图:
在linux 也可以使用防火墙.
setup 配置防火墙
iptables -a input -p tcp -s 127.0.0.1 -dport 11211 -j ACCEPT
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。