开发者社区> 问答> 正文

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

展开
收起
妙正灰 2017-08-30 10:30:45 10435 0
3 条回答
写回答
取消 提交回答
  • 解决方案工程师,负责为企业规划上云迁移方案和云上架构设计,在网站建设开发和云计算领域有多年经验,专注于Linux平台的系统维护以及应用部署。致力于以场景化的方式让云计算,用更加通俗易懂的方式让更多人体验云计算,让云端的计算更质朴的落地。
    回 2楼(无神) 的帖子
    不懂什么?

    -------------------------

    回 4楼(无神) 的帖子
    哈哈,这下我懂了
    2017-08-31 21:38:48
    赞同 展开评论 打赏
  • java,Linux
    ReUbuntu 下为单版本和多版本 PHP 安装扩展
    我不懂。。。

    -------------------------

    回 3楼妙正灰的帖子
    帖子我看明白了。很清晰,我回复的是楼上的,谢谢版主哦,还专门问一下
    2017-08-31 20:20:36
    赞同 展开评论 打赏
  • 阿里云ping https://ping.gaomeluo.com/aliyun/
    你懂的!
    2017-08-30 15:27:56
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
阿里云栖开发者沙龙PHP技术专场-直面PHP微服务架构挑战-高驰涛 立即下载
PHP安全开发:从白帽角度做安全 立即下载
PHP 2017.北京 全球开发者大会——高可用的PHP 立即下载