当前位置:首页 > CMS教程 > 其它CMS > 列表

PHP实现负载均衡session共享redis缓存操作示例

发布:smiling 来源: PHP粉丝网  添加日期:2021-10-26 09:31:18 浏览: 评论:0 

这篇文章主要介绍了PHP实现负载均衡session共享redis缓存操作,涉及php用户登陆、session存储、判断等相关操作技巧,需要的朋友可以参考下。

本文实例讲述了PHP实现负载均衡session共享redis缓存操作,分享给大家供大家参考,具体如下:

1、首先先创建html表单页面

  1. <meta chatset='utf-8'> 
  2. <center> 
  3. <form action="se.php" method="post"> 
  4.  <table> 
  5.   <tr> 
  6.    <td>帐号:</td> 
  7.    <td><input type="text" name="username"></td> 
  8.   </tr> 
  9.   <tr> 
  10.    <td>密码:</td> 
  11.    <td><input type="password" name="pwd"></td> 
  12.   </tr> 
  13.   <tr> 
  14.    <td></td> 
  15.    <td><input type="submit" value="登录"></td> 
  16.   </tr> 
  17.  </table> 
  18. </form> 
  19. </center> 

2、创建接受表单的文件

  1. <?php 
  2.  header('content-type:text/html;charset=utf-8'); 
  3.  set_time_limit(10); 
  4.  ini_set("session.save_handler",'redis');//开启php.ini中的redis配置 
  5.  ini_set("session.save_path","tcp://192.168.1.70:6379");//第一台服务器的redis 
  6.  session_start();//开启session 
  7.  $username = $_POST['username']; 
  8.  $_SESSION['username'] = $username
  9.  echo "<script>alert('登录成功!');location.href='from.php'</script>";//登录成功后跳转到欢迎登录页面 
  10. ?> 

3、跳转到from.php去判断第一台服务器的redis中的session是否存到了本台服务器的session中

  1. <?php 
  2.  header('content-type:text/html;charset=utf-8'); 
  3.  set_time_limit(10); 
  4.  ini_set("session.save_handler",'redis');//开启php.ini中的redis配置 
  5.  ini_set("session.save_path","tcp://192.168.1.70:6379");//第一台服务器的redis 
  6.  session_start();//开启session 
  7.  $username = isset($_SESSION['username']) ? $_SESSION['username'] : '';//判断当前是否存在session 
  8.  //$id = $_SESSION['PHPSESSID']; 
  9.  //echo $id; 
  10.  if(emptyempty($username)){ 
  11.   echo "<script>alert('请重新登录!');location.href='index.php'</script>"
  12.  }else
  13.   echo "欢迎".$username."登录"
  14.  } 
  15. ?> 

这样就简单了实现了redis session共享的功能,要测试的话需要两台服务器,建议使用linux 比较好用。

Tags: PHP负载均衡 redis缓存

分享到: