OSCent7x+PHP7+redis扩展

158 阅读2分钟

一、 安装过程

1. 下载

下载地址:pecl.php.net/package/red…
寻找安装包并下载(PHP7.2+ 不支持redis3.1.6的了,自行找最新安装包)

wget http://pecl.php.net/get/redis-3.1.6.tgz

2. 解压

解压到当前目录

tar -zxvf redis-3.1.6.tgz

3. 安装

在该目录下用phpize生成configure配置文件:直接运行/usr/local/php/bin/phpize(此处需注意,是你PHP安装的位置,有些人安装在PHP7文件夹,要做相应的修改)

cd redis-3.1.6
/usr/local/php/bin/phpize

Configuring for:
PHP Api Version:         20160303
Zend Module Api No:      20160303
Zend Extension Api No:   320160303

然后就是配置、编译、安装全部在该目录下完成

./configure --with-php-config=/usr/local/php/bin/php-config
make
make install

Installing
 shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/

加入PHP.INI

echo "extension=redis.so" >> /usr/local/php/etc/php.ini

安装到这步就差不多成功了,接下来重启服务

service php-fpm restart
service nginx restart

重启nginx服务 Apache同理

该目录就是redis.so文件的生成目录

ll /usr/local/php/lib/php/extensions/*/

执行结果:

# -rwxr-xr-x 1 root root 3420816 May 12  2019 opcache.a
# -rwxr-xr-x 1 root root 1636160 May 12  2019 opcache.so
# -rwxr-xr-x 1 root root 1733944 Dec  4 14:34 redis.so

看到redis.so就说明安装成功了

二、 测试

附PHP测试代码

$host = "localhost";
$port = 6379;
/* 这里替换为实例id和实例password */
$pwd = "123456";
$redis = new \Redis();
if ($redis->connect($host, $port) == false) {
    die($redis->getLastError());
}
if ($redis->auth($pwd) == false) {
    die($redis->getLastError());
}
/* 认证后就可以进行数据库操作,详情文档参考https://github.com/phpredis/phpredis */
if ($redis->set("foo", "bar") == false) {
    die($redis->getLastError());
}
$value = $redis->get("foo");
echo $value;

三、配置

1. 配置文件路径

vim /etc/redis.conf

2. 开放外网访问

注释掉配置文件下面那行

bind 127.0.0.1

关闭保护模式

protected-mode no

重启服务

service redis restart

3. 设置访问密码

查找关键字 requirepass  取消这行注释 并设置密码

requirepass password