美文网首页PHP经验分享
Mac上redis基本安装配置及问题

Mac上redis基本安装配置及问题

作者: developerAbble | 来源:发表于2018-05-10 12:30 被阅读4次

MacOS上一直没安装php的Redis扩展,最近笔者安装的时候遇到个问题,所以顺便把安装过程记录一下。顺便加固一下流程。

2 下载Redis文件

可以从gitHub上下载phpredis。gitHub上也有关于redis的使用。笔者自认为无聊时看看这些文档很不错。

 ~  git clone https://github.com/nicolasff/phpredis
 cd phpredis

1 查看是否安装

笔者电脑上没有安装Redis的php扩展。如果想查看个人电脑上是否已经安装了Redis扩展,可以使用:

php -mod

不过,笔者电脑上装的是XAMPP(其实现在有点后悔,如果当初直接安装Apache,PHP和MySQL,对于笔者现在来说可能更方便一点。但是现在形成习惯了也不想再改),查看XAMPP中的php扩展:

 ✘  /Applications/XAMPP/etc  j bin
/Applications/XAMPP/bin
 /Applications/XAMPP/bin  ./php -m

如果里面有redis,说明已安装好。如果没有,说明还未安装。

3 查看是否有phpize 和 php-config

 /Applications/XAMPP/bin  ls -a | grep phpize
phpize
phpize-7.0.2
 /Applications/XAMPP/bin  ls -a | grep php-config
php-config
php-config-7.0.2
 /Applications/XAMPP/bin 

如果没有则要安装,后面安装Redis扩展会用到。XAMPP中已安装好,所在在此不再说明如何安装。

4 安装

进入下载的redis文件,安装

 ~  cd phpredis
 ~/phpredis   develop  ls
COPYING            README.markdown    cluster_library.h  crc16.h            library.c          package.xml        redis_array.h      redis_cluster.h    redis_session.h
CREDITS            arrays.markdown    common.h           debian             library.h          php_redis.h        redis_array_impl.c redis_commands.c   rpm
INSTALL.markdown   cluster.markdown   config.m4          debian.control     mkdeb-apache2.sh   redis.c            redis_array_impl.h redis_commands.h   serialize.list
ISSUE_TEMPLATE.md  cluster_library.c  config.w32         liblzf             mkdeb.sh           redis_array.c      redis_cluster.c    redis_session.c    tests
 ~/phpredis   develop  /Applications/XAMPP/bin/phpize
Configuring for:
PHP Api Version:         20151012
Zend Module Api No:      20151012
Zend Extension Api No:   320151012
 ~/phpredis   develop  ./configure --with-php-config=/Applications/XAMPP/xamppfiles/bin/php-config
 ~/phpredis   develop  whoami
abao
 ~/phpredis   develop  sudo make install

安装后会在末行给出一个路径,记住这个路径:

Installing shared extensions:     /Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20151012/

5 php.ini文件中引用

 /Applications/XAMPP  cd etc && ls
extra                 httpd.conf.bak        mime.types            openssl.cnf           php.ini-pre1.7.2      ssl.crt               webalizer.conf.sample
freetds.conf          locales.conf          my.cnf                original              pool.conf             ssl.key               xampp
httpd.conf            magic                 openldap              php.ini               proftpd.conf          webalizer.conf
 /Applications/XAMPP/etc  vim php.ini
 /Applications/XAMPP/etc 

不知道为什么,这里的复制粘贴不行,直接截图了:

image.png

在最后一行加上extension便可。其实如果安装过xdebug,如上图所示,两者一对比,便更好理解了。好像直接 等于 redis.so 也行。笔者不放心,就全路径了。

6 最后一步最重要:

重启xampp。

 /  j xamppfiles
/Applications/XAMPP
 /Applications/XAMPP  ./xamppfiles/xampp restart
Restarting XAMPP for Mac OS X 7.0.2-1...
You need to be root to perform this action.
 ✘  /Applications/XAMPP  sudo ./xamppfiles/xampp restart
Password:
Restarting XAMPP for Mac OS X 7.0.2-1...
XAMPP: Stopping Apache...ok.
XAMPP: Stopping MySQL...ok.
XAMPP: Starting Apache...ok.
XAMPP: Starting MySQL...ok.
 /Applications/XAMPP 

然后,通过phpinfo查看,或者之前第二步查看是否安装Redis扩展。


image.png

7 连接

创建文件:


image.png

通过php在命令行上直接执行或是通过浏览器访问文件。这样,便可直接访问了。

笔者之前直接这样运行:

 /Applications/XAMPP/htdocs/code  php connect.php
PHP Fatal error:  Uncaught Error: Class 'Redis' not found in /Applications/XAMPP/xamppfiles/htdocs/code/connect.php:3
Stack trace:
#0 {main}
  thrown in /Applications/XAMPP/xamppfiles/htdocs/code/connect.php on line 3

Fatal error: Uncaught Error: Class 'Redis' not found in /Applications/XAMPP/xamppfiles/htdocs/code/connect.php:3
Stack trace:
#0 {main}
  thrown in /Applications/XAMPP/xamppfiles/htdocs/code/connect.php on line 3
 ✘  /Applications/XAMPP/htdocs/code  /Applications/XAMPP/bin/php connect.php

报错,百思不得其解。最后意识到,在CentOS上操作习惯了,CentOS上默认配置好了,或者别人配置好的。但是这里安装的XAMPP,默认没有配置。用下面的命令就不报错了:

 /Applications/XAMPP/htdocs/code  /Applications/XAMPP/bin/php connect.php
val1/Applications/XAMPP/xamppfiles/htdocs/code/connect.php:15:
string(1) "6"
 /Applications/XAMPP/htdocs/code 

相关文章

网友评论

    本文标题:Mac上redis基本安装配置及问题

    本文链接:https://www.haomeiwen.com/subject/mirzrftx.html