负载均衡session共享redis缓存

本文介绍了一个简单的Redis Session共享实现方案,通过PHP与Redis配合,在多台服务器间共享Session数据,确保用户登录状态的一致性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

<meta chatset='utf-8'>
<center>
<form action="se.php" method="post">
	<table>
		<tr>
			<td>帐号:</td>
			<td><input type="text" name="username"></td>
		</tr>

		<tr>
			<td>密码:</td>
			<td><input type="password" name="pwd"></td>
		</tr>

		<tr>
			<td></td>
			<td><input type="submit" value="登录"></td>
		</tr>
	</table>
</form>
</center>

2、创建接受表单的文件

<?php 
	header('content-type:text/html;charset=utf-8');
	set_time_limit(10);
	ini_set("session.save_handler",'redis');//开启php.ini中的redis配置
	ini_set("session.save_path","tcp://192.168.1.70:6379");//第一台服务器的redis
	session_start();//开启session
	$username = $_POST['username'];
	$_SESSION['username'] = $username;

	echo "<script>alert('登录成功!');location.href='from.php'</script>";//登录成功后跳转到欢迎登录页面
	

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

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

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

linux上安装个redis在我博客中有  需要的主可以去看 地址:http://blog.youkuaiyun.com/qq_34284638/article/details/52311563   ~ 谢谢~
?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值