首先这里说一下php-fpm 预编译选项
./configure \
--prefix=/usr/local/php \
--with-config-file-path=/usr/local/php/etc \
--with-config-file-scan-dir=/usr/local/php/etc/php.d \
--enable-fpm \
--with-fpm-user=www \
--with-fpm-group=www \
--with-mysqli \
--with-pdo-mysql
上面的有一行很重要
--with-config-file-scan-dir=/usr/local/php/etc/php.d \
我们如果安装php的一个扩展例如 mbstring
这个我们没安装在phpinfo(); 页面没有安装,好像之前phpmyadmin 提示如果不安装,,,的一些提示,我们来安装一下
这个是指扩展ini文件的位置
进入php-fpm容器
root@ccyy-virtual-machine:~# docker exec -it my_php73-fpm /bin/bash
root@980609e46cbb:/#
然后到我们的php源码的扩展目录
root@980609e46cbb:/# cd /a/2/php-7.3.11/ext/mbstring/
root@980609e46cbb:/a/2/php-7.3.11/ext/mbstring#
root@980609e46cbb:/# cd /a/2/php-7.3.11/ext/mbstring/
root@980609e46cbb:/a/2/php-7.3.11/ext/mbstring#
先运行
/usr/local/php/bin/phpize
然后预编译
./configure --with-php-config=/usr/local/php/bin/php-config
然后编译安装
make -j4
make install
显示如下就安装了
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20180731/
Installing header files: /usr/local/php/include/php/
然后下面设置扩展的ini文件
echo "extension= mbstring.so" > /usr/local/php/etc/php.d/mbstring.so.ini
然后退出重启php-fpm
root@ccyy-virtual-machine:~# docker restart my_php73-fpm
到此为止,扩展已经安装上了,php-fpm支持了 mbstring扩展