在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
redis 安装成功之后,我们是可以在命令行通过一些redis命令来操作的,但是如果我们要通过PHP来操作redis的话,还需要为php安装redis扩展。 可以通过命令:php -m 来查看php现在已经安装的一些扩展 默认情况下,php并没有redis扩展,那么我们需要为php打一个redis的包 1.进入redis官网,点击“clients”(客户端) 2.选择对应的语言,这里我们选择PHP 这里面有很多phpredis的扩展,我们可以选择带星的,相对是比较好的 这里我们选择phpredis 进入到这个扩展的github地址:https://github.com/phpredis/phpredis.git 3.在redis目录的同级目录下,把phpredis扩展下载下来 $ git clone https://github.com/phpredis/phpredis.git $ cd phpredis $ phpize 这里报错:Canot find autoconf,请查看解决方法:phpize 时 Cannot find autoconf 解决方法 $ ./configure --with--php-config=/usr/local/php5/bin/php-config $ make && make install 然后我们需要在php.ini中,把我们这个扩展加上: 有两个点需要修改: a.有一个extension_dir的选项,修改成你现在扩展的目录 b.加上:extension=redis.so 重新启动php-fpm 和服务器 再执行php -m 应该就可以看到 redis 扩展了。 ================================================================= 正常情况下应该就是上边的流程,但是我在MAC上安装的时候,有的地方不一样,当然这可能是之前用这台电脑的同事,有安装redis的缘故。当我执行php -m的时候,我发现就已经有redis扩展了,但是我没有找到他对应的安装包之类的,我决定把之前的替换掉。 但是我在php.ini的配置文件中并没有找到redis.so类似的扩展,真的是百思不得其解, 后来在一个测试文件中写了:phpinfo()进行测试。 发现有其他的一些配置文件被解析到,我打开发现,原来是写在这个扩展的配置文件中的。 它也是引入了/usr/local/php5/lib/php/extensions/no-debug-non-zts-20160303/redis.so 但是之前我在打这个redis扩展包的时候,结束提示: Installing shared extensions: /usr/local/php5/lib/php/extensions/no-debug-non-zts-20160303/ cp: /usr/local/php5/lib/php/extensions/no-debug-non-zts-20160303/#INST@14993#: Permission denied 及时我使用sudo make && make install 还是提示这个。 后来我在/phpredis/modules/目录下发现在在这个目录下也生成了redis.so, 我就直接把这个redis.so复制到/usr/local/php5/lib/php/extensions/no-debug-non-zts-20160303/去了。 $ sudo cp redis.so /usr/local/php5/lib/php/extensions/no-debug-non-zts-20160303/redis.so 后来我再去刷新phpinfo那个页面,就发现redis扩展的相关信息变了,应该是替换成功了 我就是一直都没生成redis.so 复制过去就ok了!———————————————— |
2022-08-17
2022-11-06
2022-08-18
2022-07-30
2022-08-16
请发表评论