传统的用pecl安装php扩展,已经被废弃,现代化的安装扩展需要使用pie工具;
具体的pie说明:
https://github.com/php/pie
环境要求:php版本最低8.1、gh该工具必须安装,gh会验证pie是否安装成功
我的服务器环境:debian 13; 我通过命令安装了gh,但gh的版本过低,debian13通过自身的仓库安装的gh版本是2.46,但是要安装pie1.4.8这个版本,必须要求gh的版本是2.49或者更高版本;
下面要先解决gh的版本问题,否则pie安装会失败;考虑到当前我是root用户权限:
bash
apt remove -y gh
mkdir -p -m 755 /etc/apt/keyrings
curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg \
-o /etc/apt/keyrings/githubcli-archive-keyring.gpg
chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" \
> /etc/apt/sources.list.d/github-cli.list
apt update
apt install -y gh
安装后检查gh是否安装成功、查看其版本号:
bash
gh --version
gh attestation --help
安装gh成功后,还要登录github:
bash
gh auth login
gh auth status
// 会出现一下提示:
GitHub.com
HTTPS
Authenticate Git with your GitHub credentials? n
Login with a web browser
/*终端显示一个一次性验证码。
自动尝试打开浏览器;服务器没图形界面也没关系。
你在自己电脑浏览器打开终端给出的 GitHub 地址。
输入验证码并授权。*/
// 然后回到服务器执行
gh auth status
如果gh安装成功后:考虑到我的服务器在中国大陆,可以先把:
bash
https://github.com/php/pie/releases/latest/download/pie.phar
下载到本地计算机,然后通过宝塔上传到:
bash
/root/www/server/temp/
执行安装pie的操作:
bash
// 验证pie.phar
gh attestation verify --owner php /www/server/temp/pie.phar
// 安装pie.phar
install -m 0755 /www/server/temp/pie.phar /usr/local/bin/pie
// 查看pie版本号
/www/server/php/83/bin/php /usr/local/bin/pie --version
// 删除pie.phar安装包
rm -f /www/server/temp/pie.phar
在安装成功后,也可以在根目录下执行:
bash
pie --version
// 返回内容
root@VM-8-11-debian:~# pie --version
🥧 PHP Installer for Extensions (PIE) 1.4.8
至此,安装完毕;
举例:安装redis扩展,默认的php8.3在宝塔里安装的是5.3.7这个版本,但我想安装新的稳定版本6.3;
bash
pie install 'phpredis/phpredis:^6.3' \
--with-php-config=/www/server/php/83/bin/php-config \
--with-phpize-path=/www/server/php/83/bin/phpize \
-vv
安装完成后,千万别忘了,重载php配置,否则在phpinfo环境面板中,redis的版本还是之前的旧的版本5.3.7;