21xrx.com
2024-11-21 16:38:18 Thursday
登录
文章检索 我的文章 写文章
PHP用redis存储session(环境Windows)
2019-05-25 20:00:01 深夜i     --     --
redis linux php windows
环境

   系统:windows 7 x64

    PHP版本:7.2.6 x64 线程安全版

步骤一:下载windows版的redis所对应的DLL文件并放到对应的目录下

下载地址:https://pecl.php.net/package/redis

注意:分线程安全和线程不安全两个版本,要根据自己的PHP来决定选择哪个版本,还要选择PHP对应的版本.

 下载下来的压缩包解压后,把里面的php_redis.dll这个文件放到PHP环境文件夹下的ext文件夹里(例如:C:\php\ext).

步骤二:配置php.ini文件(根据自己PHP环境加载的哪个文件来设置)

可以用 echo phpinfo();来查看一下

加载redis扩展

extension=redis

配置session存储用redis

session.save_handler = redis

配置session的存储路径(redis服务器地址和验证信息)

session.save_path = "tcp://主机地址1:6379?weight=1,tcp://主机地址2:6379?weight=2&timeout=2.5, tcp://主机地址3:6379?weight=2&timeout=2.5"

主机地址是redis所在的服务器地址

参数解释

  • weight(整型):主机所存储的session数据量和其它主机的占比,来自定义session分布在几台主机上.如果主机A是1,主机B是2,主机C是2,那么主机A占总session量的20%(1/(1+2+2)),其它两台主机的session存储量为各自40%(2/(1+2+2)).默认值是1.
  • timeout(浮点型):连接到redis主机的超时时间,以秒表示.如果在这个时间里没有连接上主机,客户端的session存储将不可用.默认的超时是非常高的(86400秒).
  • persistent(整型,1或0):指定是否使用持续连接.(实验设置)
  • prefix(字符串,默认是"PHPREDIS_SESSION:"):指定存储在redis里的key的前缀.key由前缀和session ID组成.
  • auth(字符串,默认为空):用于在发送命令之前与服务器进行身份验证(redis验证密码)。
  • database(整型):选择另一个数据库.

最后重启服务器

打开浏览器访问下网站,session就存储到redis里了:

 

 

 

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复
    相似文章