本地配置
PHP 版本
PHP 7.40
通過 HomeBrew
安裝。
~ php -v
PHP 7.4.0 (cli) (built: Nov 29 2019 16:18:44) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.0, Copyright (c), by Zend Technologies
PHPRedis
模組地址
https://github.com/phpredis/phpredis
尋找與當前 PHP
版本相匹配的 phpredis
版本,此時直接使用 develop
版本即可。
安裝
因為在編譯安裝 phpredis
過程中需要使用到 PHP
的幾個配置檔案,所以通過命令 brew list php
檢視下 PHP
安裝的主要檔案所在的路徑:
~ brew list php
/usr/local/Cellar/php/7.4.0/.bottle/etc/ (4 files)
/usr/local/Cellar/php/7.4.0/.bottle/var/log/php-fpm.log
/usr/local/Cellar/php/7.4.0/bin/pear
/usr/local/Cellar/php/7.4.0/bin/peardev
/usr/local/Cellar/php/7.4.0/bin/pecl
/usr/local/Cellar/php/7.4.0/bin/phar
/usr/local/Cellar/php/7.4.0/bin/phar.phar
/usr/local/Cellar/php/7.4.0/bin/php
/usr/local/Cellar/php/7.4.0/bin/php-cgi
/usr/local/Cellar/php/7.4.0/bin/php-config // 需要用到這個
/usr/local/Cellar/php/7.4.0/bin/phpdbg
/usr/local/Cellar/php/7.4.0/bin/phpize // 需要用到這個
/usr/local/Cellar/php/7.4.0/homebrew.mxcl.php.plist
/usr/local/Cellar/php/7.4.0/include/php/ (312 files)
/usr/local/Cellar/php/7.4.0/lib/httpd/modules/libphp7.so
/usr/local/Cellar/php/7.4.0/lib/php/ (15 files)
/usr/local/Cellar/php/7.4.0/pecl -> /usr/local/lib/php/pecl // 需要用到這個
/usr/local/Cellar/php/7.4.0/sbin/php-fpm
/usr/local/Cellar/php/7.4.0/share/man/ (8 files)
/usr/local/Cellar/php/7.4.0/share/php/ (159 files)
關鍵的PHP檔案、資料夾說明
phpize
:phpize
是用來擴充套件PHP
擴充套件模組的,通過phpize
可以建立PHP
的外掛模組,
比如你想在原來編譯好的PHP
中加入memcached
或者ImageMagick
等擴充套件模組,可以使用phpize
;php-config
:PHP
安裝完後在 bin 目錄下有個php-config
,php-config
是一個指令碼檔案,用於獲取所安裝的PHP
配置的資訊;pecl
: PHP Extension Community Library(PHP
社群擴充套件庫),管理底層的PHP
擴充套件,用 C 或者 C++編寫外部模組然後載入至 PHP 中,如redis
,xdebug
等模組。簡而言之,就是存放擴充套件模組的,這次我們安裝的 redis.so 檔案就會存放在這裡。
安裝 phpredis
-
下載 phpredis:
任意目錄使用
git
直接下載即可:~ git clone https://github.com/phpredis/phpredis
-
進入 phpredis 目錄:
~ cd phpredis
-
進行編譯安裝?
~ sudo /usr/local/Cellar/php/7.4.0/bin/phpize Configuring for: PHP Api Version: 20190902 Zend Module Api No: 20190902 Zend Extension Api No: 320190902 ~ ./configure --with-php-config=/usr/local/Cellar/php/7.4.0/bin/php-config . . . . creating libtool appending configuration tag "CXX" to libtool configure: patching config.h.in configure: creating ./config.status config.status: creating config.h config.status: config.h is unchanged ~ make && make install /bin/sh /Users/huanglongfei/Sites/ValetSites/restful-api/phpredis/libtool --mode=install cp ./redis.la /Users/huanglongfei/Sites/ValetSites/restful-api/phpredis/modules cp ./.libs/redis.so /Users/huanglongfei/Sites/ValetSites/restful-api/phpredis/modules/redis.so cp ./.libs/redis.lai /Users/huanglongfei/Sites/ValetSites/restful-api/phpredis/modules/redis.la ---------------------------------------------------------------------- Libraries have been installed in: /Users/huanglongfei/Sites/ValetSites/restful-api/phpredis/modules If you ever happen to want to link against installed libraries in a given directory, LIBDIR, you must either use libtool, and specify the full pathname of the library, or use the `-LLIBDIR' flag during linking and do at least one of the following: - add LIBDIR to the `DYLD_LIBRARY_PATH' environment variable during execution See any operating system documentation about shared libraries for more information, such as the ld(1) and ld.so(8) manual pages. ---------------------------------------------------------------------- Build complete. Don't forget to run 'make test'. Installing shared extensions: /usr/local/Cellar/php/7.4.0/pecl/20190902/
可以看到,最後安裝位置為
/usr/local/Cellar/php/7.4.0/pecl/20190902/
。配置 PHP,開啟 redis.so 擴充套件
- 編輯
php.ini
檔案;
此處當存在多個PHP版本時,一定要改對自己需要的版本。
~ vim /usr/local/etc/php/7.4/php.ini
-
在
Dynamic Extensions
配置組下,新增一行extension=redis.so
; -
檢視 ·
extension_dir
配置,也就是擴充套件目錄配置是否與實際的相同,不同則進行更改,此處應為/usr/local/Cellar/php/7.4.0/pecl/20190902/
。 -
重啟
PHP
和PHP-FPM
。
檢視是否安裝成功
執行
php -m
命令即可:~ php -m . . . readline redis Reflection session shmop . . .
安裝成功!
- 編輯
本作品採用《CC 協議》,轉載必須註明作者和本文連結