Mac系统MAMP环境下php7安装redis.so拓展

2024-02-23 06:18

本文主要是介绍Mac系统MAMP环境下php7安装redis.so拓展,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

原文参考:http://blog.webfsd.com/post_mac-xi-tongmamp-huan-jing-xiaphp7an-zhuangredisso-ta-zhan.html

首先解决一些安装依赖模块,如下:

brew install autoconf wget

PHP版本使用 7.0.8,大致步骤如下:

  1. 将扩展文件放在扩展的文件夹下
    (本次是将 redis.so 放在/Applications/MAMP/bin/php/php7.0.8/lib/php/extensions/no-debug-non-zts-20151012下,最后一个文件夹的名字每个人可能不一样)

  2. 修改php.ini 
    即在 php.ini 中添加一行:extension = redis.so

  3. 测试安装情况

安装步骤

下载PHP源代码

首先我们要去下PHP的源码文件,本人使用的 PHP7.0.8 所以下载的 7.0.15 的源码,也就是说只要下载X.X对应的版本号就可以了,最后的 .08 和官网的 .15 虽然不同,但是不影响使用,下载完成解压放到Applications/MAMP/bin/php/php7.0.8/include/ 下(include如果不存在请新建),具体的命令如下:

sudo wget -O php-7.0.15.tar.bz2 http://jp2.php.net/get/php-7.0.15.tar.bz2/from/this/mirror
tar xf php-7.0.15.tar.bz2
mkdir -p /Applications/MAMP/bin/php/php7.0.8/includecp -r /opt/package/php-7.0.15 /Applications/MAMP/bin/php/php7.0.8/include/php // 根据自己解压的路径进行php源代码的拷贝
cd /Applications/MAMP/bin/php/php7.0.8/include/php
./configure

以上步骤操作是为了让下一步编译 redis.so 时,有对应的php头部文件。

下载redis扩展
git clone https://github.com/nicolasff/phpredis
cd phpredis/
git checkout php7
/Applications/MAMP/bin/php/php7.0.8/bin/phpize --with-php-config=/Applications/MAMP/bin/php/php7.0.8/bin/php-config
./configure --with-php-config=/Applications/MAMP/bin/php/php7.0.8/bin/php-config
make && make install

编译成功,这时会在 phpredis/modules 目录下生成了 redis.so 文件。
然后将这个 redis.so 放到 /Applications/MAMP/bin/php/php7.0.8/lib/php/extensions/no-debug-non-zts-20151012/目录下然后并修改php.ini,如下:

cp /opt/package/phpredis/modules/redis.so /Applications/MAMP/bin/php/php7.0.8/lib/php/extensions/no-debug-non-zts-20151012/.
修改 php.ini


redis.so 放进去 php.ini也改了重启MAMP之后 phpinfo 没出现 redis 模块,可以通过如上修改方式进行修改即可。

然后重启 MAMP 就可以在 phpinfo 信息中看到 redis 了。

方法二

直接去我的github 下载编译好的redis.so文件放在/Applications/MAMP/bin/php/php7.0.8/lib/php/extensions/no-debug-non-zts-20151012/ 文件夹下,修改php.ini文件增加 extension = redis.so  完事!

github地址:https://github.com/sunnanphp/mamp-redis

参考这里。

测试安装

在 MAMP 环境下编辑一个 .php 文件,测试代码如下:

<?php  $redis = new redis();$redis->connect('127.0.0.1', 6379);$redis->set('site',"webfsd");$result = $redis->get('site');var_dump($result);
?>

正常会输出:
string(6) “webfsd”

ps:小编最近更新了mamp pro4.1  发现这个方法太麻烦了。。so  我们的中心思想就是把redis.so移至php的扩展就可以了嘛。

小编已经把redis.so编译好了 。只需要下载后把redis.so放至/Applications/MAMP/bin/php/php5.x.x/lib/php/extensions/no-debug-non-zts-200xxxxx (Channge 5.x.x to your PHP version)就可以了

资源地址:http://download.csdn.net/download/sun_nan_vip/9896249

如果执行上边的php文件还是不行,就看6379端口开了吗。

redis-server开启redis就可以了。实测。记录下。



如果没有开启会报错。

brew install redis // 安装 redis 程序
redis-server /etc/redis.conf // 启动 redis 服务进程
redis-cli -p 6379 shutdown // 关闭 redis 服务

这篇关于Mac系统MAMP环境下php7安装redis.so拓展的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/737760

相关文章

Knife4j+Axios+Redis前后端分离架构下的 API 管理与会话方案(最新推荐)

《Knife4j+Axios+Redis前后端分离架构下的API管理与会话方案(最新推荐)》本文主要介绍了Swagger与Knife4j的配置要点、前后端对接方法以及分布式Session实现原理,... 目录一、Swagger 与 Knife4j 的深度理解及配置要点Knife4j 配置关键要点1.Spri

Python中win32包的安装及常见用途介绍

《Python中win32包的安装及常见用途介绍》在Windows环境下,PythonWin32模块通常随Python安装包一起安装,:本文主要介绍Python中win32包的安装及常见用途的相关... 目录前言主要组件安装方法常见用途1. 操作Windows注册表2. 操作Windows服务3. 窗口操作

Redis出现中文乱码的问题及解决

《Redis出现中文乱码的问题及解决》:本文主要介绍Redis出现中文乱码的问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 问题的产生2China编程. 问题的解决redihttp://www.chinasem.cns数据进制问题的解决中文乱码问题解决总结

SQLite3 在嵌入式C环境中存储音频/视频文件的最优方案

《SQLite3在嵌入式C环境中存储音频/视频文件的最优方案》本文探讨了SQLite3在嵌入式C环境中存储音视频文件的优化方案,推荐采用文件路径存储结合元数据管理,兼顾效率与资源限制,小文件可使用B... 目录SQLite3 在嵌入式C环境中存储音频/视频文件的专业方案一、存储策略选择1. 直接存储 vs

Redis的持久化之RDB和AOF机制详解

《Redis的持久化之RDB和AOF机制详解》:本文主要介绍Redis的持久化之RDB和AOF机制,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述RDB(Redis Database)核心原理触发方式手动触发自动触发AOF(Append-Only File)核

linux重启命令有哪些? 7个实用的Linux系统重启命令汇总

《linux重启命令有哪些?7个实用的Linux系统重启命令汇总》Linux系统提供了多种重启命令,常用的包括shutdown-r、reboot、init6等,不同命令适用于不同场景,本文将详细... 在管理和维护 linux 服务器时,完成系统更新、故障排查或日常维护后,重启系统往往是必不可少的步骤。本文

Redis分片集群、数据读写规则问题小结

《Redis分片集群、数据读写规则问题小结》本文介绍了Redis分片集群的原理,通过数据分片和哈希槽机制解决单机内存限制与写瓶颈问题,实现分布式存储和高并发处理,但存在通信开销大、维护复杂及对事务支持... 目录一、分片集群解android决的问题二、分片集群图解 分片集群特征如何解决的上述问题?(与哨兵模

SpringBoot连接Redis集群教程

《SpringBoot连接Redis集群教程》:本文主要介绍SpringBoot连接Redis集群教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 依赖2. 修改配置文件3. 创建RedisClusterConfig4. 测试总结1. 依赖 <de

SpringBoot+Redis防止接口重复提交问题

《SpringBoot+Redis防止接口重复提交问题》:本文主要介绍SpringBoot+Redis防止接口重复提交问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录前言实现思路代码示例测试总结前言在项目的使用使用过程中,经常会出现某些操作在短时间内频繁提交。例

如何在Mac上彻底删除Edge账户? 手动卸载Edge浏览器并清理残留文件技巧

《如何在Mac上彻底删除Edge账户?手动卸载Edge浏览器并清理残留文件技巧》Mac上的Edge账户里存了不少网站密码和个人信息,结果同事一不小心打开了,简直尴尬到爆炸,想要卸载edge浏览器并清... 如果你遇到 Microsoft Edge 浏览器运行迟缓、频繁崩溃或网页加载异常等问题,可以尝试多种方