php添加module

0x01 查看modules

[root@0cab39d51c9e ~]# php -m
[PHP Modules]
bcmath
bz2
calendar
Core
ctype
curl
date
dom
exif
fileinfo
filter
ftp
gd
gettext
hash
iconv
igbinary
json
libxml
mbstring
mcrypt
memcache
memcached
msgpack
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_sqlite
Phar
pspell
readline
redis
Reflection
session
SimpleXML
sockets
SPL
sqlite3
standard
tokenizer
wddx
xml
xmlreader
xmlwriter
xsl
yaf
Zend OPcache
zip
zlib

[Zend Modules]
Zend OPcache

0x02 找到php module所在目录

# 查看php.ini文件,可以通过 extension_dir去配置modules的目录。
less php.ini

# php.ini部分文件内容如下:
; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
; extension_dir = "./"
; On windows:
; extension_dir = "ext"

# 这里我使用的是默认的目录
cd /usr/lib64/php/modules
# 也可以通过find命令查询so文件所在目录
[root@0cab39d51c9e ~]# find / -name mysqli.so
/usr/lib64/php/modules/mysqli.so

0x03 添加so文件

至于怎么获得so文件,这里就不赘述了,每个模块都有自己的编译方法,并且方法较多。
得到so文件后,将对应的so文件添加至php module文件夹即可

0x04 配置so文件路径

# 查看php.ini
less php.ini

# php.ini部分文件内容如下:
; If you wish to have an extension loaded automatically, use the following
; syntax:
;
;   extension=modulename.extension
;
; For example, on Windows:
;
;   extension=msql.dll
;
; ... or under UNIX:
;
;   extension=msql.so
;
; ... or with a path:
;
;   extension=/path/to/extension/msql.so
;
; If you only provide the name of the extension, PHP will look for it in its
; default extension directory.

;;;;
; Note: packaged extension modules are now loaded via the .ini files
; found in the directory /etc/php.d; these are loaded by default.
;;;;

;;;;;;;;;;;;;;;;;;;
; Module Settings ;
;;;;;;;;;;;;;;;;;;;

# 由以上配置可知,可以通过extension=xxx.so的方式去配置加载具体的so文件。
# 并且默认会加载所有的/etc/php.d目录下的.ini文件
# 所以我们将为每个so文件在/etc/php.d目录下创建对应的.ini文件即可

0x05 添加ini文件

# 添加完成后的文件如下:
less 30-phalcon.ini

; Enable phalcon extension module
extension=phalcon

# ini文件前面的数字表示优先级,数字越小越先加载。
# 本质上就是从上往下按文件名称的顺序加载,数字越小,文件越靠上。

0x06 重启php-fpm进程

# 重新查看php module,发现多了phalcon模块,添加成功
php -m
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容