使用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對等連接或者修改安全組,具體可查看幫助中心的虛擬私有雲服務以及分布式緩存服務。