Mac安裝php擴展redis遇到的問題,執行phpize問題


1、安裝redis
在mac OS中可以使用brew命令進行安裝redis:mac OS使用brew命令安裝軟件
安裝命令:brew install redis
因為我已經安裝過了,這里就不在贅述。
安裝完之后,根據提示,有兩種啟動redis方式,分別是一下兩種:
后台運行模式:brew services start redis
非后台運行模式:redis-server /usr/local/etc/redis.conf(redis配置文件的位置)
這里我使用第一種方式:
192:etc stone$ brew services start redis

==> Successfully started `redis` (label: homebrew.mxcl.redis)

 

2、下載並編譯安裝phpredis
git clone git://github.com/nicolasff/phpredis.git
cd ./phpredis
phpize  #(可能會出錯,我安裝中遇到的問題https://blog.csdn.net/qq_39930129/article/details/92801470)

/*在執行中會報如下錯誤:

grep: /usr/include/php/main/php.h: No such file or directory

grep: /usr/include/php/Zend/zend_modules.h: No such file or directory

grep: /usr/include/php/Zend/zend_extensions.h: No such file or directory

Configuring for:

PHP Api Version:        

Zend Module Api No:     

Zend Extension Api No:

解決辦法:

網上搜索解決方法是:

sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include /usr/include
但是執行該命令之后,提示:ln: /usr/include: Operation not permitted
查看/usr目錄,沒有include這個文件夾,於是,又去找解決方法,說是安裝command line tool就自動會幫你配置好Unix開發環境,就會生成include這個文件夾,然並卵,安裝完執行ln命令依然報錯。
然后能怎么樣,繼續找解決方法咯。

然后找啊找,最后找到了這個方法:

sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /

如果安裝macOS_SDK_headers_for_macOS_10.14.pkg -target 界面報安裝失敗,可把該安裝包放置到桌面進行雙擊安裝即可。*/


./configure
make
make install

3、開啟php redis擴展
mac OS默認的php.ini文件是在/etc下,可以使用命令:php -i |grep php.ini 查看自己php.ini的位置
有一個php.ini.default
在當前目錄下復制一份命名為php.ini
使用vim/vi 打開該文件進行編輯,添加extension=redis.so,保存
使用php -m查看是否有redis模塊
 
4、測試redis是否開啟成功
<?php
/**
* Created by PhpStorm.
* User: stone
* Date: 2019-06-18
* Time: 22:15
*/
$redisObject=new Redis();
if(!$redisObject->connect('127.0.0.1',6379)){
die("Can't connect to Redis Server");
}else{
echo 'Redis is connected';
}
輸出 Redis is connected代表redis擴展開啟成功了。

 

總結命令:

mac重啟php-fpm

//查看php-fpm端口是否在被php-fpm使用

sudo lsof -i:9000

//一般修改 php.ini 文件后經常需要重啟php-fpm

sudo  killall  php-fpm   // 關閉

//再輸入 sudo lsof -i:9000 就會發現php-fpm沒有打印對應端口

sudo  php-fpm    // 重啟

 

redis命令

redis  -server  //開啟redis服務器

redis  -cli     //開啟redis客戶端命令

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM