0

0

宝塔面板如何配置网站的Session存储在Redis中?

P粉602998670

P粉602998670

发布时间:2026-03-16 10:26:03

|

487人浏览过

|

来源于php中文网

原创

需将PHP网站Session存储切换至Redis以解决多服务器会话不一致问题:一、确认Redis已安装运行;二、安装启用PHP Redis扩展;三、修改php.ini配置session.save_handler为redis并设置路径;四、通过redis-cli验证Session写入;五、可选配置站点级.user.ini实现单站独立配置。

宝塔面板如何配置网站的session存储在redis中?

如果您在宝塔面板中部署了基于PHP的网站,但发现Session数据默认写入本地文件系统,导致多服务器负载均衡下会话不一致或性能瓶颈,则需将Session存储切换至Redis。以下是配置网站Session使用Redis的具体步骤:

一、确认Redis服务已安装并运行

Session存入Redis的前提是服务器上已部署并启用Redis服务,且PHP扩展支持Redis作为Session处理器。需确保Redis服务处于活动状态,并监听默认端口6379(或自定义端口)。

1、登录宝塔面板,在左侧菜单点击软件商店,搜索“Redis”,确认其状态为“已安装”且运行状态为“正在运行”。

2、若未安装,点击“安装”按钮,选择对应版本完成安装;安装完成后点击“设置”→“服务”→“启动”。

3、进入“终端”或通过SSH连接服务器,执行redis-cli ping,返回PONG表示服务响应正常。

二、安装并启用PHP的Redis扩展

PHP必须加载redis.so或phpredis扩展,才能将Session handler设为redis。不同PHP版本需分别处理,宝塔支持一键安装扩展。

1、在宝塔面板中进入软件商店 → 找到已安装的PHP版本 → 点击右侧“设置” → 切换到“安装扩展”选项卡。

2、在扩展列表中找到redis(非“Redis扩展(旧版)”或“phpredis”重复项),点击“安装”。

3、安装完成后,返回“配置文件”选项卡,确认php.ini中存在extension=redis.so(Linux)或extension=php_redis.dll(Windows),且未被分号注释。

4、重启对应PHP服务:点击“服务”→“重启”。

三、修改PHP配置启用Redis Session处理器

需显式指定PHP使用redis作为session.save_handler,并配置正确的连接参数(如Redis地址、端口、密码、数据库索引等),使所有PHP-FPM进程统一写入同一Redis实例。

1、在宝塔面板中进入网站 → 选择目标站点 → 点击“设置” → 切换到“PHP版本”选项卡,记录当前所用PHP版本号(如8.0)。

2、返回软件商店 → 找到该PHP版本 → 点击“设置” → “配置文件”,打开php.ini。

3、在文件末尾新增以下四行(若已存在则修改值):

session.save_handler = redis

session.save_path = "tcp://127.0.0.1:6379?database=0"

session.cookie_httponly = 1

iMuse.AI
iMuse.AI

iMuse.AI 创意助理,为设计师提供无限灵感!

下载

session.use_strict_mode = 1

4、若Redis设置了密码,将第二行改为:session.save_path = "tcp://127.0.0.1:6379?auth=your_password&database=0"(替换your_password为实际密码)。

5、保存文件后,点击“重载配置”或重启PHP服务。

四、验证Session是否写入Redis

配置生效后,PHP生成的新Session ID应被写入Redis的指定数据库,可通过命令行或Redis桌面工具直接观察键值变化,确认写入行为真实发生。

1、在服务器终端执行:redis-cli -n 0 keys "PHPREDIS_SESSION:*"(假设database=0)。

2、访问该网站任意PHP页面(如info.php,内容为<?php session_start(); echo session_id(); ?>),刷新几次。

3、再次执行上述redis-cli命令,应看到新增的以“PHPREDIS_SESSION:”开头的键名,且TTL非零(表明Redis自动管理过期)。

4、执行redis-cli -n 0 ttl "PHPREDIS_SESSION:abc123..."(替换为实际键名),返回数值大于0即表示Session存活且受Redis控制。

五、针对单站点的独立PHP配置(可选)

若仅需某一个网站使用Redis Session,而其他网站保持文件存储,可绕过全局php.ini,改用站点级.user.ini覆盖配置,避免影响全局PHP环境。

1、在宝塔面板中进入网站 → 选择目标站点 → “设置” → “配置文件” → 找到“网站目录”路径(如/www/wwwroot/example.com)。

2、在该目录下新建或编辑.user.ini文件(注意开头为点号)。

3、写入以下两行:

session.save_handler=redis

session.save_path="tcp://127.0.0.1:6379?database=0"

4、保存后,在面板中点击“重载配置”或等待宝塔自动重载(通常30秒内生效)。

5、检查该站点根目录下phpinfo()输出中的“Loaded Configuration File”是否仍为全局php.ini,但“Scan this dir for additional .ini files”应包含该目录,且Session相关项已按.user.ini覆盖。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
session失效的原因
session失效的原因

session失效的原因有会话超时、会话数量限制、会话完整性检查、服务器重启、浏览器或设备问题等等。详细介绍:1、会话超时:服务器为Session设置了一个默认的超时时间,当用户在一段时间内没有与服务器交互时,Session将自动失效;2、会话数量限制:服务器为每个用户的Session数量设置了一个限制,当用户创建的Session数量超过这个限制时,最新的会覆盖最早的等等。

336

2023.10.17

session失效解决方法
session失效解决方法

session失效通常是由于 session 的生存时间过期或者服务器关闭导致的。其解决办法:1、延长session的生存时间;2、使用持久化存储;3、使用cookie;4、异步更新session;5、使用会话管理中间件。

776

2023.10.18

cookie与session的区别
cookie与session的区别

本专题整合了cookie与session的区别和使用方法等相关内容,阅读专题下面的文章了解更详细的内容。

97

2025.08.19

windows查看端口占用情况
windows查看端口占用情况

Windows端口可以认为是计算机与外界通讯交流的出入口。逻辑意义上的端口一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。怎么查看windows端口占用情况呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

1518

2023.07.26

查看端口占用情况windows
查看端口占用情况windows

端口占用是指与端口关联的软件占用端口而使得其他应用程序无法使用这些端口,端口占用问题是计算机系统编程领域的一个常见问题,端口占用的根本原因可能是操作系统的一些错误,服务器也可能会出现端口占用问题。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

1172

2023.07.27

windows照片无法显示
windows照片无法显示

当我们尝试打开一张图片时,可能会出现一个错误提示,提示说"Windows照片查看器无法显示此图片,因为计算机上的可用内存不足",本专题为大家提供windows照片无法显示相关的文章,帮助大家解决该问题。

837

2023.08.01

windows查看端口被占用的情况
windows查看端口被占用的情况

windows查看端口被占用的情况的方法:1、使用Windows自带的资源监视器;2、使用命令提示符查看端口信息;3、使用任务管理器查看占用端口的进程。本专题为大家提供windows查看端口被占用的情况的相关的文章、下载、课程内容,供大家免费下载体验。

463

2023.08.02

windows无法访问共享电脑
windows无法访问共享电脑

在现代社会中,共享电脑是办公室和家庭的重要组成部分。然而,有时我们可能会遇到Windows无法访问共享电脑的问题。这个问题可能会导致数据无法共享,影响工作和生活的正常进行。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2362

2023.08.08

TypeScript类型系统进阶与大型前端项目实践
TypeScript类型系统进阶与大型前端项目实践

本专题围绕 TypeScript 在大型前端项目中的应用展开,深入讲解类型系统设计与工程化开发方法。内容包括泛型与高级类型、类型推断机制、声明文件编写、模块化结构设计以及代码规范管理。通过真实项目案例分析,帮助开发者构建类型安全、结构清晰、易维护的前端工程体系,提高团队协作效率与代码质量。

90

2026.03.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
进程与SOCKET
进程与SOCKET

共6课时 | 0.4万人学习

Redis+MySQL数据库面试教程
Redis+MySQL数据库面试教程

共72课时 | 7.2万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号