OneinStack 如何安装 PHP 扩展

LNMP.png

由于 PHP 打开 fileinfo(php 参数 –enable-fileinfo)需要大量系统资源才能编译通过,考虑到小内存机器,因此默认 OneinStack fileinfo 不支持,需额外再安装,如果你没安装则会提示:

PHP function mime_content_type() is missing, try enabling fileinfo module.

这样的问题应该是需要安装 [Fileinfo PHP] 扩展才可以继续安装。如果我们当前服务器环境是使用的 OneInStack 一键 WEB 配置的,那就相对比较简单,直接内置有扩展可以快速安装。

第一、快速安装扩展

切换到 oneinstack 安装的根目录下执行 ./addons.sh 脚本, 根据提示可以直接安装成功

第二、手工编译安装

并不是所有的 PHP 扩展都可以通过 ./addons.sh 脚本安装成功, 如果需要安装脚本中没有提供的 PHP 扩展, 就可以使用源码编译安装, 下面我们已 yaf 扩展为例讲解:

# 新建一个文件夹存放下载好的 PHP 扩展压缩包
mkdir php-extension
# 进入刚才的目录中, 下载 PHP 扩展源码包, 基本上都可以在 PECL 找到需要的 PHP 扩展
wget https://pecl.php.net/get/yaf-3.0.7.tgz
# 解压文件
tar zxvf yaf-3.0.7.tgz
# 查看解压的文件目录
ll
package.xml  yaf-3.0.7  yaf-3.0.7.tgz
# 切换到解压好的目录下
cd yaf-3.0.7
# 进项源码编译
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
# 编译完成后切换到编译好的扩展存放的目录之下
cd /usr/local/php/lib/php/extensions
# 查看有没有 no-debug-non-zts-20160303 类似文件夹
ls 
# 进入 o-debug-non-zts-20160303 文件夹下
cd no-debug-non-zts-20160303
# 查看有没有 yaf.so 扩展, 如果有, 证明编译成功
ls 
# 向 php.ini 配置文件加载 yaf.so 扩展
echo 'extension=yaf.so' > /usr/local/php/etc/php.d/ext-yaf.ini
# 重启 PHP
service php-fpm restart

这样就安装好了 PHP 扩展.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容