CentOS 系统下 PHP 怎么添加扩展?
先决环境
centOS7.5
php7.3
开始安装
以安装openssl扩展为例,如果没有下载好源码包需先下载
-
编译源码
我的openssl源码在/usr/local/src/php/extension/openssl
目录下cd /usr/local/src/php/extension/openssl
运行phpize
命令
运行./configure --with-php-config=/usr/local/php/bin/php-config
命令
运行make & make install
如果报错pcntl.lo' is not a valid libtool object
或者其他类似not a valid libtool object
的错误
运行make clean
make install
执行成功之后会产生一个.so
文件,记住这个文件的位置phpize
可能会出现以下错误Cannot find config.m4. Make sure that you run '/opt/local/bin/phpize' in the top level source directory of the module
将
config0.m4
改名为config.m4
或者直接·cp config0.m4 config.m4
就可以解决 -
配置扩展
使用php --ini
命令找到php.ini
文件的位置
定位到配置文件位置
在php.ini
配置文件中添加以下内容#我的.so文件统一放在/usr/local/lib/php/extension目录下 extension_dir="/usr/local/lib/php/extension" extension=openssl.so
-
重启php
找到php-fpm master
进程ps aux | grep php-fpm root 2367 0.0 0.5 212856 5764 ? Ss Feb22 0:03 php-fpm: master process (/usr/local/php/etc/php-fpm.conf) www-data 2368 0.0 0.5 214940 5680 ? S Feb22 0:00 php-fpm: pool www www-data 2369 0.0 0.5 214940 5680 ? S Feb22 0:00 php-fpm: pool www root 13193 0.0 0.0 110276 900 pts/0 R+ 23:15 0:00 grep --color=auto php-fpm
pid
是2367
重启这个进程kill -USR2 2367
INT, TERM
立刻终止QUIT
平滑终止USR1
重新打开日志文件USR2
平滑重载所有worker进程并重新载入配置和二进制模块
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: