LNMP环境下Redis安装指南
LNMP环境下Redis安装与集成指南
一、准备工作
- 前提条件:确保已搭建稳定的LNMP(Linux+Nginx+MySQL+PHP)环境,且PHP能正常解析网页(可通过访问PHPinfo页面验证)。
- 系统依赖:安装编译Redis及PHP扩展所需的工具包(以CentOS为例):
Ubuntu/Debian系统使用yum install -y gcc gcc-c++ make automake pcre pcre-devel zlib zlib-devel openssl openssl-devel
apt
替换yum
即可。
二、安装Redis服务器
1. 下载与解压
选择Redis稳定版本(如5.0.5),下载并解压到指定目录(如/www/lnmp
):
cd /www/lnmp
wget http://download.redis.io/releases/redis-5.0.5.tar.gz
tar -zxvf redis-5.0.5.tar.gz
cd redis-5.0.5
2. 编译与安装
执行编译安装命令,将Redis安装到/usr/local/redis
目录:
make
mkdir -p /usr/local/redis
make install PREFIX=/usr/local/redis
3. 配置Redis后台运行
修改Redis配置文件(redis.conf
),将daemonize no
改为yes
(允许Redis以后台守护进程运行):
vim redis.conf
# 找到"daemonize no",修改为:
daemonize yes
4. 启动Redis服务
使用配置文件启动Redis,并验证状态:
/usr/local/redis/src/redis-server /usr/local/redis/redis.conf
ps -ef | grep redis # 确认进程存在
5. 设置开机自启动
将Redis启动脚本复制到系统init.d目录,添加开机启动项:
cp utils/redis_init_script /etc/init.d/redis
chmod +x /etc/init.d/redis
chkconfig --add redis # CentOS 7以下
systemctl enable redis # CentOS 7及以上
测试重启机器后Redis是否自动启动。
三、安装PHP Redis扩展
1. 下载与解压
通过PECL下载最新稳定版本的PHP Redis扩展(如3.2.8),解压到/www/lnmp
目录:
cd /www/lnmp
pecl download redis
tar -zxvf redis-*.tgz
cd redis-*
2. 编译与安装
使用PHPize生成编译配置,指定PHP路径(如/www/source/php
),完成编译安装:
/www/source/php/bin/phpize
./configure --with-php-config=/www/source/php/bin/php-config
make
make install
安装完成后,redis.so
文件会生成在PHP扩展目录(如/www/source/php/lib/php/extensions/no-debug-zts-20151012/
)。
3. 配置PHP加载扩展
编辑PHP配置文件(如/www/source/php/lib/php.ini
),在extension=
后面添加redis.so
:
vim /www/source/php/lib/php.ini
# 添加以下行:
extension=redis.so
4. 重启服务并验证
重启PHP-FPM和Nginx,使配置生效:
service php-fpm restart
service nginx restart
创建info.php
文件(<
?php phpinfo();
?>
),访问该页面搜索“redis”,若出现Redis扩展信息则说明安装成功。
四、测试Redis功能
创建PHP测试文件(如/www/web/index.php
),实现缓存逻辑:
<
?php
$redis = new Redis();
try {
$redis->
connect('127.0.0.1', 6379);
// 连接Redis
$key = 'test_key';
$value = $redis->
get($key);
if ($value === false) {
$value = 'Hello, Redis!';
$redis->
set($key, $value, 20);
// 缓存20秒
echo "Data from MySQL (cached: $value)";
}
else {
echo "Data from Redis cache: $value";
}
}
catch (Exception $e) {
echo "Redis connection failed: " . $e->
getMessage();
}
?>
访问该页面,首次输出“Data from MySQL”,20秒内再次访问输出“Data from Redis cache”,说明Redis缓存功能正常。
五、安全优化建议
- 设置Redis密码:修改
redis.conf
,添加requirepass yourpassword
(替换为强密码),重启Redis后生效。连接时需调用auth
方法:$redis-> auth('yourpassword');
- 限制访问IP:在
redis.conf
中设置bind 127.0.0.1
,仅允许本地访问,避免暴露端口。 - 定期备份数据:通过
save
命令或BGSAVE
指令定期保存数据到磁盘。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: LNMP环境下Redis安装指南
本文地址: https://pptw.com/jishu/725403.html