宝塔面板-兰空图床启用 FFI 拓展-在不影响现有的php的情况下进行重新编译php

剧情透露
天云小助手
文章最后更新时间:2025-10-26 09:52:09,若有错误或已失效,请在下方 留言

前言

如果直接直接执行安装ffi扩展,就会报错,因为仓库没有稳定的版本,php安装的时候已经带有ffi,如果是php源编译安装没有加入ffi参数,后期想启用ffi扩展,就得进行重新编译,下面是我的操作笔记,可以参考进行启用,我为什启用ffi,兰空图床更新到2.3.0版本后要启用vips和ffi扩展。

教程开始

源码编译安装

如果你的 PHP 是通过源码编译的,需要重新编译并添加 FFI 支持:

创建一个临时目录来解压和编译PHP。

mkdir -p /tmp/php_compile

将PHP源代码解压到该目录,如果你是宝塔编译安装的php,那就按照我的方法依次执行

tar -xzf /www/server/php/84/src.tar.gz -C /tmp/php_compile

现在进入该目录,并准备开始重新配置和编译过程。

cd /tmp/php_compile/php-8.4.12 && ls -la configure

已经进入PHP源代码目录,且确认configure脚本可执行。接下来检查libffi的开发包是否已安装,这对于编译FFI扩展是必要的。

dpkg -l | grep -i libffi

如果libffi开发包已安装,现在使用configure命令配置PHP,在原有配置基础上添加–with-ffi参数。(看不懂输出的问AI)

./configure --prefix=/www/server/php/84 --with-config-file-path=/www/server/php/84/etc --enable-fpm --with-fpm-user=www --with-fpm-group=www --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype --with-jpeg --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --enable-intl --enable-ftp --enable-gd --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-soap --with-gettext --disable-fileinfo --enable-opcache --with-sodium=/usr/local/libsodium --with-webp --with-ffi

可能会有警告不要管警告,开始执行make命令编译PHP。

make -j$(nproc)

编译完成后!执行make install命令将编译好的PHP安装到指定目录。

make install

验证FFI扩展是否已正确编译并安装

php -m | grep -i ffi

输出FFI就对了,代表已经开启,安装成功,打开宝塔php扩展看看。

图片[1]-宝塔面板-兰空图床启用 FFI 拓展-在不影响现有的php的情况下进行重新编译php-ZB博客

现在修改ffi,打开宝塔php配置,ffi.enable=1(修改成1)

图片[2]-宝塔面板-兰空图床启用 FFI 拓展-在不影响现有的php的情况下进行重新编译php-ZB博客

结束语

ok.本教程到此结束,有问题可以问问AI,或者发在评论区。

© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享
评论 共2条

请登录后发表评论