Ubuntu 下为单版本和多版本 PHP 安装扩展

介绍

尽管 PHP 软件源提供了不少 PHP 扩展,但并不是提供所有的扩展,那么如果我们需要安装一个软件源没有提供的扩展应该怎么办呢?

利用 php-dev 就可以很方便的进行自行编译 PHP 扩展了。不过如果有使用 PHP 多版本共存就会更加麻烦一点。

单一PHP

一、安装 php-dev ,如果不是 7.1 需要自己修改一下版本号:

apt install php7.1-dev

二、以安装 Swoole 为例:

pecl install swoole

三、添加配置文件:

cd /etc/php/7.1/fpm/conf.d/
touch swoole.ini
echo "extension=swoole.so" | tee -a swoole.ini

四、重启 php-fpm 即可:

systemctl restart php7.1-fpm

多PHP共存

因为多个 PHP 就不能简单粗暴的使用 pecl 安装了,因为安装好了不知道是给谁用的。这里以 PHP7.1 和 PHP5.6 为例,还是 swoole。

一、安装 php-dev:

apt install php7.1-dev php5.6-dev

二、下载 swoole 源码 ,地址:http://pecl.php.net/package/swoole

cd /root/src
wget http://pecl.php.net/get/swoole-1.9.15.tgz
tar xzf swoole-1.9.15.tgz
cd swoole-1.9.15

三、为 PHP7.1 进行编译

cd /root/src/swoole-1.9.15
/usr/bin/phpize7.1
./configure --with-php-config=/usr/bin/php-config7.1
make && make install

四、为 PHP5.6 进行编译

cd /root/src/swoole-1.9.15
/usr/bin/phpize5.6
./configure --with-php-config=/usr/bin/php-config5.6
make && make install

五、添加 PHP7.1 配置文件

cd /etc/php/7.1/fpm/conf.d/
touch swoole.ini
echo "extension=swoole.so" | tee -a swoole.ini

六、添加 PHP5.6 配置文件

cd /etc/php/5.6/fpm/conf.d/
touch swoole.ini
echo "extension=swoole.so" | tee -a swoole.ini

七,重启 PHP-FPM

systemctl restart php7.1-fpm
systemctl restart php5.6-fpm

发表评论

发表评论

沙发空缺中,还不快抢~