最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
PHP在Linux如何更新
时间:2026-07-18 17:33:49 编辑:袖梨 来源:一聚教程网
使用包管理器更新(推荐,适用于大多数场景)包管理器是Linux系统更新PHP的便捷方式,适用于Debian/Ubuntu(APT)和CentOS/RHEL(YUM/DNF)系统。操作前需备份重要数据和配置文件(如php.ini、网站文件),避免升级失败导致数据丢失。

Debian/Ubuntu系统(APT):
- 更新系统包列表:
sudo apt update; - 升级已安装的PHP及相关模块:
sudo apt upgrade php php-cli php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip(可根据实际安装的模块调整); - 验证版本:
php -v,确认输出为新版本号。
- 更新系统包列表:
CentOS/RHEL系统(YUM/DNF):
- 清理旧缓存并更新系统:
sudo yum clean all && sudo yum update; - 升级PHP:
sudo yum update php(若使用DNF,替换为sudo dnf update php); - 验证版本:
php -v,确认升级成功。
- 清理旧缓存并更新系统:
通过第三方仓库更新(获取最新稳定版)若系统自带仓库的PHP版本较旧,可通过添加第三方仓库(如Ondřej Surý的PPA、Remi仓库)安装最新版本。适用于需要PHP 8.x等新特性的场景。
Debian/Ubuntu系统(Ondřej Surý PPA):
- 添加PPA仓库:
sudo add-apt-repository ppa:ondrej/php; - 更新包列表:
sudo apt update; - 安装指定版本(如PHP 8.1):
sudo apt install php8.1 php8.1-cli php8.1-fpm php8.1-mysql; - 切换默认PHP版本(若有多个版本):
sudo update-alternatives --config php。
- 添加PPA仓库:
CentOS/RHEL系统(Remi仓库):
- 安装EPEL仓库(基础依赖):
sudo yum install epel-release; - 下载并安装Remi仓库:
sudo yum install https://rpms.remirepo.net/enterprise/remi-release-$(rpm -E %rhel).rpm(替换$(rpm -E %rhel)为系统版本,如7、8); - 启用目标PHP版本仓库(如PHP 8.1):
sudo yum-config-manager --enable remi-php81; - 升级PHP:
sudo yum update php*; - 验证版本:
php -v。
- 安装EPEL仓库(基础依赖):
手动编译安装(高级用户,自定义需求)若需要完全自定义PHP配置(如启用特定扩展、优化性能),可选择手动编译安装。步骤较复杂,需提前安装依赖库。
安装依赖库:
- Debian/Ubuntu:
sudo apt install build-essential libxml2-dev libssl-dev libcurl4-openssl-dev libonig-dev libzip-dev; - CentOS/RHEL:
sudo yum install gcc make autoconf libc-dev zlib-devel libxml2-devel bzip2-devel curl-devel libjpeg-devel libpng-devel freetype-devel openssl-devel。
- Debian/Ubuntu:
下载并解压源码:访问PHP官网(
https://www.php.net/downloads.php)下载所需版本(如php-8.2.0.tar.gz),使用命令解压:wget https://www.php.net/distributions/php-8.2.0.tar.gz && tar -xzf php-8.2.0.tar.gz && cd php-8.2.0。配置编译选项:运行
./configure命令,指定安装路径、启用扩展(如--enable-mbstring、--with-openssl):./configure --prefix=/usr/local/php8.2 --enable-mbstring --enable-zip --with-openssl --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd(可根据需求调整)。编译并安装:执行
make编译源码(耗时较长),完成后运行sudo make install安装到指定路径。配置环境与Web服务器:
- 复制配置文件:
cp php.ini-production /usr/local/php8.2/etc/php.ini; - 若使用PHP-FPM,复制配置文件并启动服务:
cp sapi/fpm/php-fpm.conf /usr/local/php8.2/etc/php-fpm.conf、cp sapi/fpm/www.conf /usr/local/php8.2/etc/php-fpm.d/www.conf,然后运行sudo /usr/local/php8.2/sbin/php-fpm; - 集成Web服务器(Apache/Nginx),修改配置文件指向新PHP版本(如Apache添加
LoadModule php_module modules/libphp.so,Nginx配置fastcgi_pass unix:/tmp/php-fpm.sock)。
- 复制配置文件:
验证与切换:运行
php -v确认版本,重启Web服务器(sudo systemctl restart apache2或sudo systemctl restart nginx),通过info.php页面验证Web环境中的PHP版本。
注意事项
- 兼容性检查:升级前查阅PHP官方迁移指南(如
https://www.php.net/manual/en/migration.php),确保应用程序与新版本兼容(如函数弃用、语法变更); - 备份数据:备份
php.ini、网站数据库、项目文件,防止升级过程中出现意外; - 测试环境:优先在测试环境验证升级流程,确认无误后再应用于生产环境;
- 服务重启:升级完成后,重启Web服务器(Apache/Nginx)和PHP-FPM(若使用),确保新版本生效。
相关文章
- Linux php-fpm日志在哪里查看 07-18
- Linux上PHP怎样优化内存 07-18
- OBS Studio如何设置显示器图形浏览 07-18
- PHP在Linux系统如何迁移 07-18
- Linux中PHP如何测试 07-18
- 商汤001号员工创办AI公司:将AI角色引擎做成护城河:获种子轮融资 | 36氪首发 07-18