linux 多个PHP版本切换版本

一、当系统存在多个 PHP 版本时,核心是通过 update-alternatives(系统级软链接管理) 或 直接指定绝对路径,确保 php、phpize、php-config 指向目标版本(最新版)

第一步:先找到所有 PHP 版本的安装路径

php 复制代码
# 搜索 php 可执行文件
which -a php
find /usr/bin -name "php*" | grep -E "php$|php[0-9]+\.[0-9]+$"

# 搜索 phpize(编译依赖)
which -a phpize
find /usr/bin -name "phpize*" | grep -E "phpize$|phpize[0-9]+\.[0-9]+$"

# 搜索 php-config(编译配置依赖)
which -a php-config
find /usr/bin -name "php-config*" | grep -E "php-config$|php-config[0-9]+\.[0-9]+$"

或者查找
find / -name php-fpm

第二步:用 update-alternatives 配置系统默认版本

bash 复制代码
# 1. 添加 PHP 7.4 到 php 替代组(优先级设为 100,数字越大优先级越高)
sudo update-alternatives --install /usr/bin/php php /usr/bin/php7.4 100

# (可选)如果之前有旧版本(如 PHP 7.2),也添加到替代组(优先级设为 90,低于 7.4)
sudo update-alternatives --install /usr/bin/php php /usr/bin/php7.2 90

# 2. 选择默认的 php 版本(会弹出交互界面,选对应 PHP 7.4 的序号)
sudo update-alternatives --config php

按上诉方式依次替换 phpize php-config

补充:CentOS 系统的差异

CentOS 没有 update-alternatives 对 PHP 的默认支持,需手动创建软链接,步骤如下:

bash 复制代码
先删除旧的软链接(如果存在)
sudo rm -f /usr/bin/php /usr/bin/phpize /usr/bin/php-config

为最新版本创建新的软链接(假设 PHP 7.4 路径为 /usr/bin/php74,需根据实际路径调整):
# 假设 PHP 7.4 安装在 /usr/bin/php74、/usr/bin/phpize74、/usr/bin/php-config74
sudo ln -s /usr/bin/php74 /usr/bin/php
sudo ln -s /usr/bin/phpize74 /usr/bin/phpize
sudo ln -s /usr/bin/php-config74 /usr/bin/php-config
相关推荐
旖旎夜光1 小时前
Linux(13)(中)
linux·网络
威迪斯特2 小时前
CentOS图形化操作界面:理论解析与实践指南
linux·运维·centos·组件·图形化·桌面·xserver
一方热衷.2 小时前
在线安装对应版本NVIDIA驱动
linux·运维·服务器
独自归家的兔2 小时前
ubuntu系统安装dbswitch教程 - 备份本地数据到远程服务器
linux·运维·ubuntu
ONE_SIX_MIX2 小时前
ubuntu 24.04 用rdp连接,桌面黑屏问题,解决
linux·运维·ubuntu
龙飞052 小时前
Systemd -systemctl - journalctl 速查表:服务管理 + 日志排障
linux·运维·前端·chrome·systemctl·journalctl
*小海豚*2 小时前
在linux服务器上DNS正常,但是java应用调用第三方解析域名报错
java·linux·服务器
June`2 小时前
muduo项目排查错误+测试
linux·c++·github·muduo网络库
消失的旧时光-19432 小时前
Linux 编辑器入门:nano 与 vim 的区别与选择指南
linux·运维·服务器
晓13132 小时前
第七章 【C语言篇:文件】 文件全面解析
linux·c语言·开发语言