使用php连接Redis、Memcache等都需要进行扩展,以CentOS为例,介绍phpredis的客户端环境搭建。

第0步:准备工作

华为云上购买1台弹性云服务器ECS(我选了CentOS 6.3),一个分布式缓存实例(DCS for Redis),我选了个单机实例。

注意ECS和缓存实例配置相同的VPC和安全组,确保网络互通。

第一步:安装gcc-c++及make等编译组件

  yum install gcc-c++ make

第二步:安装php开发包与命令行工具

使用yum方式直接安装。
  yum install php-devel php-common php-cli

安装完后可查看版本号,确认成功安装:

  php -version 

第三步:安装phpredis

step01:下载phpredis源文件

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

以上是当前最新版本。还可以去redis官网或者php官网下载其他版本的phpredis客户端

step02:下载后解压

  tar -zxvf redis-4.1.0RC3.tgz
  cd redis-4.1.0RC3

step03:编译前先执行扩展命令
   phpize
step04:配置
  ./configure --with-php-config=/usr/bin/php-config

注意php-config位置,建议先查找和确认php-config文件的目录,不同操作系统,不同的php安装方式,文件位置不一样。

  find / -name php-config

step05:编译和安装
  make && make install

step06:安装完后注意增加redis模块的引用配置

   vim /usr/local/php/etc/php.ini
增加如下配置项,注意redis.so同样要先查找确认文件目录。
  extension = "/usr/lib64/php/modules/redis.so"
保存退出后确认扩展生效:
   php -m |grep redis

如果以上命令返回了 redis,恭喜你,phpredis客户端环境搭建好了。

第四步:脚本测试

编辑一个redis.php文件:

<?php
$redis_host = "{redis_instance_address}";
$redis_port = 6379;
$user_pwd = "{password}";
$redis = new Redis();
if ($redis->connect($redis_host, $redis_port) == false) {
die($redis->getLastError());
}
if ($redis->auth($user_pwd) == false) {
die($redis->getLastError());
}

if ($redis->set("welcome", "Hello, DCS for Redis!") == false) {
die($redis->getLastError());
}
$value = $redis->get("welcome");
echo $value;
$redis->quit();
?>

执行 php redis.php,就能发现能正常连接缓存实例并进行数据操作咯~

ps:

1.如果执行后报错,说明配置不正确;

2.如果执行后无反应,可能是网络不通,检查ip地址,端口,再确认ECS和缓存实例的VPC和安全组是否一致,不一致则需要建立VPC对等连接或者修改安全组,具体可查看帮助中心的虚拟私有云服务以及分布式缓存服务。

如何配置php客户端(phpredis)并连接Redis--华为DCS for Redis使用经验系列的更多相关文章

  1. Linux、Windows下Redis的安装即Redis的基本使用详解

    前言 什么是Redis Redis是一个基于内存的key-value结构数据库.Redis 是互联网技术领域使用最为广泛的存储中间件,它是「Remote Dictionary Service」的首字母 ...

  2. 在linux安装redis单机和集群后,如何在windows上使用redis客户端或者java代码访问错误的原因很简单,就是没有连接上redis服务,由于redis采用的安全策略,默认会只准许本地访问。需要通过简单配置,完成允许外网访问。

    这几天在学习在linux上搭建服务器的工作,可谓历经艰辛.可喜最后收获也不少. 这次是在linux上搭建redis服务器后从windows上缺无法访问,连接不上. 仔细回忆以前搭建nginx和ftp的 ...

  3. Redis — CentOS6.4安装Redis以及安装PHP客户端phpredis

    一.安装Redis 1.下载安装包 wget http://download.redis.io/releases/redis-2.8.6.tar.gz 2.解压包 tar xzf redis-2.8. ...

  4. 使用Python客户端(redis-py)连接Redis--华为云DCS for Redis使用经验

    使用Python连接Redis,需要先安装Python以及redis-py,以CentOS为例,介绍redis-py的客户端环境搭建. 第0步:准备工作 华为云上购买1台弹性云服务器ECS(我选了Ce ...

  5. linux 下安装redis并用QT写客户端程序进行连接

      1.安装redis.使用如下命令: wget http://dowload.redis.io/redis-stable.tar.gz tar xzf redis-stable.tar.gz cd ...

  6. Ubuntu18.04,安装Redis配置远程连接访问和简单使用Redis

    前言 Redis是常用基于内存的Key-Value数据库,比Memcache更先进,支持多种数据结构,高效,快速.用Redis可以很轻松解决高并发的数据访问问题:作为实时监控信号处理也非常不错. 环境 ...

  7. oracle11g的监听配置文件中的program和env两个配置,必须干掉,客户端才能正常连接

    oracle11g的监听配置文件中的program和env两个配置,必须干掉,客户端才能正常连接 oracle11g的监听配置文件中的program和env两个配置,必须干掉,客户端才能正常连接 or ...

  8. Redis集群~StackExchange.redis连接Twemproxy代理服务器

    回到目录 本文是Redis集群系列的一篇文章,主要介绍使用StackExchange.Redis进行Twemproxy(文中简称TW)代理服务的连接过程,事务上,对于TW来说,我们需要理解一下它的物理 ...

  9. Redis进阶实践之六Redis Desktop Manager连接Windows和Linux系统上的Redis服务

    一.引言 今天本来没有打算写这篇文章,当初我感觉使用这个工具应该很简单,下载的过程也不复杂,也没有打算记录下来.但是在使用的过程中还是出现了一些问题,为了给第一次使用Redis Desktop Man ...

随机推荐

  1. Linux centos修改防火墙为iptables

    防火墙配置 CentOS 7默认使用的是firewall作为防火墙,这里改为iptables防火墙.  firewall操作: # service firewalld status; #查看防火墙状态 ...

  2. linux下ab网站压力测试命令

    http://domain:代表压测域名.   get方法压测:        1)一般get方法压测简单,直接后缀url就ok了,参数直接挂在url后面的?a=1&b=2,         ...

  3. js中使用trim

    function trim(s) { return trimRight(trimLeft(s)); } //去掉左边的空白 function trimLeft(s) { if (s == null) ...

  4. Manifest XML signature is not valid(安装ClickOnce签名未通过验证)

    转载:http://stackoverflow.com/questions/12826798/manifest-xml-signature-is-not-valid 安装时,我的问题:  PLATFO ...

  5. Linux简介及最常用命令(简单易学,但能解决95%以上的问题)

    转载 longctw 版权声明:只为分享.欢迎转载^V^ https://blog.csdn.net/xulong_08/article/details/81463054 Linux是目前应用最广泛的 ...

  6. mysql-5.7.12-winx64 安装

    之前安装mysql时未做总结,换新电脑,补上安装记录,安装的时候,找了些网友的安装记录,发现好多坑 1.mysql-5.7.12-winx64.zip下载官方下载地址:http://dev.mysql ...

  7. # 课下测试ch02

    课下测试ch02 1.假设下面位串是基于IEEE格式的5位浮点表示,一个符号位,2个阶码位,两个小数位.下面正确的是(AD) A . 3.5的表示是[01011] B . -1.0的表示[01111] ...

  8. JavaWeb总结(六)

    获取原始表单数据 - POST请求不仅可以传输文本信息还可以传输二进制数据 - 如果想得到请求中参数的原始字节数据,可以使用HttpServletRequest对象提供的getInputSteam() ...

  9. JavaWeb总结(四)

    使用Servlet发送服务器端响应信息 Servlet API中定义一个专门的接口类javax.servlet.http.HttpServletResponse用于创建HTTP响应,包括HTTP协议的 ...

  10. [Deep-Learning-with-Python]神经网络入手学习[上]

    神经网络入手[上] [x] 神经网络的核心部分 [x] Keras介绍 [ ] 使用Keras解决简单问题:分类和回归 神经网络剖析 神经网络的训练与下列对象相关: 网络层Layers,网络层结合形成 ...