在MAC版MAMP環(huán)境下為PHP7.x安裝redis擴展

在 MacBook 上安裝了 MAMP 開發(fā)環(huán)境巍杈,來調(diào)試一個 PHP 的網(wǎng)站項目。MAMP & MAMP Pro軟件是一款很好的在MAC下面運行的網(wǎng)站集成環(huán)境軟件扛伍,其由Apache+MySQL+PHP+動態(tài)DNS配置構(gòu)成筷畦,PHP的版本可以動態(tài)切換到最新版,功能強大刺洒,配置簡單鳖宾,十分便于本地調(diào)試。


u=2313372741,4256511677&fm=173&app=25&f=JPEG.jpeg

圖:MAMP 設(shè)置一個虛擬主機及網(wǎng)站安裝

后面他想在PHP7的版本下面安裝Redis的擴展程序逆航,以配合自己的程序開發(fā)鼎文。無奈在這位群友屢次安裝失敗之后,找到我希望來解脫他在面對 terminal(命令行)拋出的一大串錯誤消息時的痛苦因俐。在這次的解決過程中自己也相當于完成了一次學習拇惋,現(xiàn)在就發(fā)現(xiàn)的問題和需要注意的事項寫成一篇文章。

在 MAC 版 MAMP 環(huán)境下為 PHP7.x 安裝 redis 擴展的過程抹剩。

一撑帖、首先解決一些安裝依賴的問題

1、(Mac 電腦中已安裝了 Homebrew 包管理器的可忽略此步)如果你的 MAC 電腦未安裝有 Homebrew——一個包管理器澳眷,需要先安裝 Homebrew 包管理器胡嘿,后面步驟中的 ./configure 命令和安裝 redis 服務端的命令等需要 brew 為其安裝組件。

打開 terminal钳踊,安裝 Homebrew:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

將以上命令粘貼至終端(terminal)衷敌,參考: https://brew.sh/index_zh-cn.html

腳本在執(zhí)行過程中會有多次暫停箍土,并說明將它將做什么逢享;同時也會邊執(zhí)行、邊需要聯(lián)網(wǎng)下載資源吴藻,下載速度不會很快(因為是國內(nèi)網(wǎng)絡(luò)訪問國外站點資源)瞒爬,請耐心等待安裝完成。

2沟堡、(Mac 電腦中已安裝了 configure 配置組件的可忽略此步)使用 brew 命令安裝 configure 配置組件侧但。

brew install autoconf wget

二、下載 php-redis 擴展組件的安裝包

在終端中使用 git clone 命令下載 php-redis 擴展組件的安裝包:

git clone https://github.com/nicolasff/phpredis.git

當然沒有用 git 也沒關(guān)系航罗,可以自己去找官網(wǎng)下載:try https://github.com/nicolasff/phpredis.git 禀横。

u=1639678433,1047096273&fm=173&app=25&f=JPEG.jpeg

圖:在GitHub的phpredis倉庫下載develo

下載完成后系統(tǒng)會自動解壓安裝包文件。如果未自動解壓粥血,請手動解壓或使用 unzip phpredis.zip 命令解壓柏锄。

解壓后使用 cd 命令進入 phpredis 目錄:

cd phpredis/

注意:phpredis/ 目錄的路徑如果不對酿箭,請按照其在自己電腦上的完整路徑來切換,如 ./phpredis-php7/趾娃。

三缭嫡、使用 phpize 命令編譯生成 configure 配置文件

1、phpize 命令:

此時終端顯示的當前目錄是 phpredis抬闷,在終端中執(zhí)行以下命令:

/Applications/MAMP/bin/php/php7.2.1/bin/phpize --with-php-config=/Applications/MAMP/bin/php/php7.2.1/bin/php-config

如果出現(xiàn)此錯誤:

Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable. Then, rerun this script.

則是因為此命令依賴 autoconf 工具妇蛀,需要安裝 autoconf 工具(參考第一步中的第2點)。

如果執(zhí)行成功笤成,會提示如下信息:

[圖片上傳失敗...(image-5c9c98-1572966543736)]

圖:phpize 命令執(zhí)行成功截圖评架。

2、本步驟需要注意事項:

在這一步需要注意的一個問題是炕泳,在使用 phpize 編譯命令時纵诞,一定要使用 /Applications/MAMP/bin/php/php7.2.1/bin/phpize 這個應用程序 MAMP 下的 php7.x 的 bin 目錄來執(zhí)行 phpize。

因為 MAC 自帶了 php 環(huán)境喊崖,可以使用 MAMP 將 php 配到命令行中挣磨,這時候你使用的 php -v 是 MAMP 加到環(huán)境變量的 php 版本,但是你如果直接使用 phpize 命令(未指定應用程序 MAMP 下的 php7.x 的 bin 目錄的 phpize)荤懂,那么 phpize 編譯的將是系統(tǒng)自帶的那個 php 環(huán)境茁裙,所以直接使用 phpize 編譯擴展的時候,會編譯到系統(tǒng)自帶的 PHP 環(huán)境下节仿,故而須注意在使用 phpize 命令時一定要使用的是全路徑晤锥,而且上面的 php/php{版本}/ 目錄路徑有可能跟我的不一樣,請自行核對并調(diào)整 廊宪。

四矾瘾、配置、編譯并安裝 phpredis

1箭启、配置 phpredis 命令壕翩。

此時終端顯示的當前目錄是 phpredis,在終端中執(zhí)行以下命令:

./configure --with-php-config=/Applications/MAMP/bin/php/php7.2.1/bin/php-config

如果執(zhí)行出錯傅寡,提示“未找到指定目錄”之類的信息放妈,也是因為此命令依賴 autoconf 工具,需要安裝 autoconf 工具(參考第一步中的第2點)荐操。

如果執(zhí)行成功芜抒,像這樣:

[圖片上傳失敗...(image-d018cb-1572966543736)]

圖:./configure 命令執(zhí)行成功截圖。

2托启、編譯與安裝 phpredis 命令(make 是編譯宅倒,make install 是安裝)。

make && make install

安裝成功后屯耸,這時會在 phpredis/modules 目錄下生成了 redis.so 文件拐迁。同時 redis.so 會自動復制到/Applications/MAMP/bin/php/php7.0.8/lib/php/extensions/no-debug-non-zts-20171025/ 目錄下(extensions 后面帶日期部分的那一級目錄可能會與我的不一樣蹭劈,請以自己電腦上的為準)。如果該目錄下不存在 redis.so唠亚,可手動將 phpredis/modules 目錄下的 redis.so 復制過去链方。至此,phpredis 擴展已安裝成功灶搜。

五、修改 php.ini

如果直接在對應php版本中修改php.ini會失效(這里遇到個坑)工窍,建議在 MAMP Pro 軟件中打開 php.ini 文件并修改割卖,因為在終端中使用 vim 命令編輯 php.ini 文件或手動打開編輯 php.ini 文件保存后可能不會起作用,所以建議在 MAMP Pro 軟件中打開 php.ini 文件并修改:

[圖片上傳失敗...(image-a26322-1572966543736)]

圖:MAMP 中打開 php.ini患雏。

在 php.ini 中搜索 "extension="鹏溯,在后面添加一行:"extension=redis.so",保存后重啟 MAMP淹仑。

[圖片上傳失敗...(image-ee37cd-1572966543736)]

圖:修改 php.ini 文件丙挽。

六、檢查 redis 組件是否安裝成功

新建一個 phpinfoTest.php 文件匀借,輸入:

<?php phpinfo(); ?>

保存后運行颜阐,查看是否有 redis 關(guān)鍵字:

[圖片上傳失敗...(image-778a21-1572966543736)]

圖:phpinfo 中的 redis 信息。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末吓肋,一起剝皮案震驚了整個濱河市凳怨,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌是鬼,老刑警劉巖肤舞,帶你破解...
    沈念sama閱讀 219,589評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異均蜜,居然都是意外死亡李剖,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,615評論 3 396
  • 文/潘曉璐 我一進店門囤耳,熙熙樓的掌柜王于貴愁眉苦臉地迎上來篙顺,“玉大人,你說我怎么就攤上這事紫皇∥堪玻” “怎么了?”我有些...
    開封第一講書人閱讀 165,933評論 0 356
  • 文/不壞的土叔 我叫張陵聪铺,是天一觀的道長化焕。 經(jīng)常有香客問我,道長铃剔,這世上最難降的妖魔是什么撒桨? 我笑而不...
    開封第一講書人閱讀 58,976評論 1 295
  • 正文 為了忘掉前任查刻,我火速辦了婚禮,結(jié)果婚禮上凤类,老公的妹妹穿的比我還像新娘穗泵。我一直安慰自己,他們只是感情好谜疤,可當我...
    茶點故事閱讀 67,999評論 6 393
  • 文/花漫 我一把揭開白布佃延。 她就那樣靜靜地躺著,像睡著了一般夷磕。 火紅的嫁衣襯著肌膚如雪履肃。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,775評論 1 307
  • 那天坐桩,我揣著相機與錄音尺棋,去河邊找鬼。 笑死绵跷,一個胖子當著我的面吹牛膘螟,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播碾局,決...
    沈念sama閱讀 40,474評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼荆残,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了擦俐?” 一聲冷哼從身側(cè)響起脊阴,我...
    開封第一講書人閱讀 39,359評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎蚯瞧,沒想到半個月后嘿期,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,854評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡埋合,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,007評論 3 338
  • 正文 我和宋清朗相戀三年备徐,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片甚颂。...
    茶點故事閱讀 40,146評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡蜜猾,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出振诬,到底是詐尸還是另有隱情蹭睡,我是刑警寧澤,帶...
    沈念sama閱讀 35,826評論 5 346
  • 正文 年R本政府宣布赶么,位于F島的核電站肩豁,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜清钥,卻給世界環(huán)境...
    茶點故事閱讀 41,484評論 3 331
  • 文/蒙蒙 一琼锋、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧祟昭,春花似錦缕坎、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,029評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至恰力,卻和暖如春叉谜,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背踩萎。 一陣腳步聲響...
    開封第一講書人閱讀 33,153評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留很钓,地道東北人香府。 一個月前我還...
    沈念sama閱讀 48,420評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像码倦,于是被迫代替她去往敵國和親企孩。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,107評論 2 356