“心有所向,日复一日,必有精进”

前言:

想必大家看完我之前写的搭建redis服务器,大家都已经把redis搭建起来了吧如果没有搭建起来的小可爱请移步这里哦从0到1搭建redis6

是不是还没看够呢,现在它来了,搭建完redis服务器,我们肯定要去用的,下面我们会一步步讲解redis cluster向PHP客户端扩展。

七、redis cluster 向客户端扩展

1.安装PHP7版本及php-fpm,php-redis,hiredis,swoole扩展

更新yum源

[root@mysql_master ~]# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
[root@mysql_master ~]# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
[root@mysql_master /]# yum search php71w
  • 注:没有错误的话这里可以跳过
  • 安装到这里的时候,发现了我的centos7在装完上面的两个yum源后,进行下一步查看有没有PHP71w扩展的时候,yum search php71w竟然弹出来错误,而且我的yum安装程序也不能使用(不能使用yum install **)
  • 搜了很多参考资料,但对这个错误解释的很少,以下是我的解决过程

  1. 看错误提示,应该是证书有问题,但这时候我们使用不了yum安装任何东西,所以我们首先删除刚才安装的所有rpm软件包,命令如下:

    # yum -y remove epel-release-7-14.noarch
  2. 安装证书:

    #yum install ca-certificates -y
  3. 更新证书:

    # update-ca-trust extract
  4. 重新更新yum源

    [root@mysql_master /]# rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    [root@mysql_master /]# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
    查看PHP信息:
    [root@mysql_master /]# yum search php71w #出现以下内容则证明没有问题
    mod_php71w.x86_64 : PHP module for the Apache HTTP Server
    php71w-bcmath.x86_64 : A module for PHP applications for using the bcmath library
    php71w-cli.x86_64 : Command-line interface for PHP
    php71w-common.x86_64 : Common files for PHP
    php71w-dba.x86_64 : A database abstraction layer module for PHP applications
    php71w-devel.x86_64 : Files needed for building PHP extensions
    ...................内容很多,不再赘述~

2.安装PHP7.1以及扩展

[root@mysql_master /]# yum -y install php71w php71w-fpm php71w-cli php71w-common php71w-devel php71w-gd php71w-pdo php71w-mysql php71w-mbstring php71w-bcmath

3.检查PHP版本

[root@mysql_master /]# php -v
PHP 7.1.33 (cli) (built: Oct 26 2019 10:16:23) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies

4.安装swoole扩展

[root@mysql_master ~]# wget -O Swoole-4.4.5.tar.gz https://github.com/swoole/swoole-src/archive/v4.4.5.tar.gz
[root@mysql_master ~]# tar -zxvf Swoole-4.4.5.tar.gz
[root@mysql_master ~]# cd swoole-src-4.4.5
[root@mysql_master swoole-src-4.4.5]# phpize //(ubuntu没有安装phpize可执行命令: sudo apt-get install php-dev来安装phpize)
[root@mysql_master swoole-src-4.4.5]# ./configure // 配置
[root@mysql_master swoole-src-4.4.5]# make //编译
[root@mysql_master swoole-src-4.4.5]# make install //安装

5.安装PHP-redis扩展

[root@mysql_master ~]# yum -y install redis php-redis

6.安装异步hiredis

[root@mysql_master ~]# yum -y install hiredis-devel

7.配置php.ini

编译安装成功后,修改php.ini加入

[root@mysql_master ~]# vim /etc/php.ini
extension=redis.so
extension=swoole.so
#通过php -m或phpinfo()来查看是否成功加载了swoole.so,如果没有可能是php.ini的路径不对,可以使用php --ini来定位到php.ini的绝对路径
[root@mysql_master ~]# php -m //检查框架模块加载成功没有

8.安装php-fpm扩展

1、安装php71w-fpm 上面已经用yum安装过了就不必再次安装

2、创建web用户组及用户

默认用户www-data
[root@mysql_master ~]# id www-data
id: www-data: no such user
[root@mysql_master ~]# groupadd www-data
[root@mysql_master ~]# useradd -g www-data www-data
[root@mysql_master ~]# id www-data
uid=1001(www-data) gid=1001(www-data) groups=1001(www-data)

9.修改php-fpm

[root@mysql_master ~]# vim /etc/php-fpm.d/www.conf
user=www-data
group=www-data

10.修改Nginx配置

[root@mysql_master ~]# yum -y install nginx
[root@mysql_master ~]# rm -rf /etc/nginx/nginx.conf
[root@mysql_master ~]# cp /etc/nginx/nginx.conf.default /etc/nginx/nginx.conf
[root@mysql_master ~]# vim /etc/nginx/nginx.conf
修改为以下内容
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

11.写测试页面

[root@mysql_master ~]# systemctl restart nginx
[root@mysql_master ~]# cd /usr/share/nginx/html/
[root@mysql_master html]# vim index.php #写以下内容
<?php
phpinfo();
?> #重启服务
[root@mysql_master html]# systemctl restart nginx php-fpm

12.验证PHP是否能正常启动成功

#浏览器访问:
http://192.168.232.11/index.php //这里写自己的配PHP的主机和PHP名称 #往下找看看能否找到redis模块,出现如下信息即配置成功

13.测试

连接哪个redis,应该先开启,否则出现访问拒绝
[root@mysql_master html]# vim redis.php
<?php
//连接192.168.232.12的Redis服务
$redis = new Redis();
$redis->connect('192.168.232.11',7000);
$redis->auth (''); //redis认证
echo "connection to server sucessfully";
//查看服务是否运行
echo "server is running: " . $redis->ping();
?>

好了,到这里我们PHP客户端的redis已搭建起来,想要了解更多redis内容,可以关注私信我,有问题也可以私信我,redis我还会继续更新,感觉写的不错的话点个赞吧~

喜欢就点个关注叭~

转载请注明出处,持续更新ing...

如有问题可以发我邮箱2325117110@qq.com

从0到1搭建redis6.0.7续更~的更多相关文章

  1. 从0到1搭建redis6.0.7

    redis集群搭建 一.安装redis 源码安装: 1.下载源码包: wget http://download.redis.io/releases/redis-6.0.7.tar.gz 2.解压到指定 ...

  2. Docker:docker搭建redis6.0.8集群

    下载redis镜像 #拉取镜像 docker pull redis:6.0.8 查看版本 #查看版本 docker inspect redis 生成redis.conf配置文件 #在 /home/re ...

  3. centos8平台安装redis6.0.1

    一,redis的官网: https://redis.io/ redis6于5月3日正式发布,它的新增功能: acl 多线程io cluster proxy resp3协议 本文演示redis6.0.1 ...

  4. Redis6.0.6集群服务搭建

    实现目标 一台主机上搭建3主3从高可用redis集群 环境 Linux :CentOS7 Redis : 6.0.6 准备工作 1.查看是否有安装wget命令,如果没有安装使用yum命令安装wgt命令 ...

  5. Redis6.0.9主从搭建

    所谓主从,大家都知道主是写数据,而从是进行数据的拷贝. 1:配置 主节点 127.0.0.1 6379 从节点 127.0.0.1 6378 先将单机版的配置文件赋值两份出来,原先的配置中主要改动有: ...

  6. linux安装redis-6.0.1单机和集群

    redis作为一个直接操作内存的key-value存储系统,也是一个支持数据持久化的Nosql数据库,具有非常快速的读写速度,可用于数据缓存.消息队列等. 一.单机版安装 1.下载redis 进入re ...

  7. centos8平台redis cluster集群搭建(redis5.0.7)

    一,规划 redis cluster 1,cluster采用六台redis,3主3从 redis1    : ip: 172.17.0.2 redis2    : ip: 172.17.0.3 red ...

  8. sorl6.0+jetty+mysql搭建solr服务

    1.下载solr 官网:http://lucene.apache.org/solr/ 2.目录结构如下 3.启动solr(默认使用jetty部署) 在path路径下将 bin文件夹对应的目录加入,然后 ...

  9. 从0到1搭建移动App功能自动化测试平台(2):操作iOS应用的控件

    转自:http://debugtalk.com/post/build-app-automated-test-platform-from-0-to-1-Appium-interrogate-iOS-UI ...

随机推荐

  1. 第十一篇:vue.js监听属性(大作业进行时)

    这个知识点急着用所以就跳过<计算属性>先学了 首先理解一下什么是监听:对事件进行监控,也就是当我进行操作(按了按钮之类的事件)时,会有相应的事情发生 上代码 <div id = &q ...

  2. Keepalived之简单有效的配置

    1.简介 官网地址:https://www.keepalived.org/ 源码包下载地址:https://www.keepalived.org/download.html Keepalived是一种 ...

  3. IO_对象流

    对象流 对象的本质是用来组织和存储数据的,对象本身也是数据.那么,能不能将对象存储到硬盘上的文件中呢?能不能将对象通过网络传输到另一个电脑呢?我们可以通过序列化和反序列化实现. java对象的序列化和 ...

  4. 不建议升级windows11的理由

    此文写于2022年9月13日,用于警告那些蠢蠢欲动想升级win11的伙伴. win11发布后,最亮眼的功能当然是自带"安卓模拟器",但作为一名程序开发者的我其实是不愿意马上尝鲜的, ...

  5. zabbix客户端无法上传数据

    昨天发现有一台Windows服务器无法向zabbix服务端汇报数据.经过检查Windows上的客户端日志,可以看到以下错误. 31976:20200206:154445.873 active chec ...

  6. Python-Django模板

    前面将hello world输出给浏览器,将数据与 视图 混合在一起,不符合 MVC思想. 模板就是一个文本,用来分离文档的表现形式和内容. 在templates目录下创建一个html模板 然后需要向 ...

  7. 13. 第十二篇 二进制安装kubelet

    文章转载自:https://mp.weixin.qq.com/s?__biz=MzI1MDgwNzQ1MQ==&mid=2247483842&idx=1&sn=1ef1cb06 ...

  8. secureCRT登录ubuntu 报错:`No compatible key-exchange method. The server supports these methods: diffie-hellman`

    在VMware虚拟机中安装好ubuntu 20.04,已安装并启动sshd,但是使用secureCRT远程登录时则报错: Key exchange failed. No compatible key- ...

  9. localStorage概要

    在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题(cookie中每条cookie的存储空间为4k),localSt ...

  10. 多线程的使用(springboot)

    预备知识 业务使用多线程的原因 目的是面对高并发的时候,提高运行速度 场景一: 一个业务逻辑有很多次的循环,每次循环之间没有影响,比如验证1万条url路径是否存在,正常情况要循环1万次,逐个去验证每一 ...