php是使用源码编译安装的,现在需要添加mbstring扩展
可以使用命令 php -m 来查看已加载的扩展
这里需要用到phpize ,phpize是官方提供的一个动态添加扩展的工具
检查是否有phpize
执行 whereis phpize 或者find / -name phpize
提示
phpize: /usr/local/bin/phpize 说明可用
进入需要编译安装的扩展目录(php安装包的ext目录)
cd /php-7.1.2/ext/mbstring
输入命令 /usr/local/bin/phpize 命令执行完毕后,目录里面会生成几个文件,有configure.. ,
先找到php-config的目录
执行whereis php-config或者find / -name php-config
我这里显示的是 php-config: /usr/local/bin/php-config
然后输入 ./configure --with-php-config=/usr/local/bin/php-config 命令(这里的目录对应你显示的php-config目录)
./configure命令后面带--的都是参数设置,具体扩展有哪些参数设置,详情可以使用 ./configure --help 查看
执行 make && make install 命令执行完毕后,它会提示你一个路径,这个路径里面就是我们编译的好的扩展,
修改php.ini配置文件
vi /usr/local/etc/php.ini
添加一行 extension=mbstring.so
重启php-fpm和nginx
/etc/init.d/php-fpm restart
/usr/local/nginx/sbin/nginx -s reload
完成以上步骤一般就可以的了,如果还是加载不了,查看php_info()里面的信息
其中 Configuration File (php.ini) Path 显示的值为/usr/local/lib
而我的/usr/local/lib目录下没有php.ini文件
把php.ini复制到/usr/local/lib下,
cp /usr/local/php/etc/php.ini /usr/local/lib
重启php-fpm和nginx
============================================
安装pdo_mysql扩展,步骤同上
cd /php-7.1.2/ext/pdo_mysql
这里不同:
./configure --with-php-config=/usr/local/bin/php-config --with-pdo-mysql=/usr/local/mysql
修改php.ini,加上
extension=pdo_mysql.so
==============================================
安装pdo_mysql扩展