ubuntu中PHP升级详细方法

本文介绍在Ubuntu上升级php,从PHP 8.1.x升级到8.2.x的方法和步骤。。

一、准备阶段

1. 确认现有PHP环境

检查当前版本

复制代码
php -v

2. 添加PHP仓库

  • 添加包含PHP 8.2的第三方PPA

    sudo add-apt-repository ppa:ondrej/php

  • 更新包列表 刷新软件包缓存

    sudo apt update

二、安装阶段

1、安装PHP 8.2

安装核心及常用扩展

复制代码
sudo apt install php8.2 php8.2-cli php8.2-common
  • 安装所需扩展 按需安装其他扩展(如fpm、mysql等)

    复制代码
    sudo apt install php8.2-fpm php8.2-mysql

2、切换PHP版本

  • 为命令行和Web服务配置新版本

    sudo update-alternatives --config php

三、验证阶段

1、验证新版本安装情况

  • 重启apache服务

    sudo systemctl restart apache2

  • 检查版本

    • php -v
  • 检查Web服务器PHP版本

    sudo -u www-data php -v

  • 如果上述代码显示的版本是 8.2,说明升级成功,否则,你需要用以下方法手段切换web服务器的php版本为8.2

    sudo a2query -m php8.2 # 返回 "enabled"为正常

  • 如果上述代码显示非enabled,执行下列代码

    sudo a2dismod php8.1 # 禁用旧版本
    sudo a2enmod php8.2 # 启用新版本
    sudo systemctl restart apache2 #重启web服务器
    sudo -u www-data php -v #检查web中的php版本

2、测试业务在新版本中是否正常运行

  • 这一步要根据业务类型,测试升级后的php8.2版本是否与你现有的业务系统兼容。

3、 清理旧版本

  • 如果你确认你的新版本稳定后,可以移除PHP 8.1版本,当然你也可以选择不移除,这不影响你的业务。

    sudo apt purge php8.1*

四、注意事项与说明

1、添加仓库:

  • ondrej/php PPA 是Ubuntu社区广泛使用和维护的PHP仓库,可靠性较高。如果你之前已经添加过此仓库用于安装PHP 8.1,则无需重复添加。

2、安装扩展:

  • 这是最关键的一步。你必须安装所有PHP 8.1上已安装的扩展的对应8.2版本。你可以用以下命令查看已安装的8.1扩展,然后逐一安装:

    dpkg -l | grep php8.1

复制代码
dpkg -l | grep php8.2
复制代码
安装php8.2缺少的插件

sudo apt install php8.2-zip php8.2-curl php8.2-gd php8.2-intl php8.2-mbstring php8.2-soap php8.2-xml
  • 对于Apache Web服务器,安装 libapache2-mod-php8.2,会自动禁用旧版本模块并启用新模块。

    sudo apt install libapache2-mod-php8.2

3、业务测试

  • 升级后,需要访问你的网站,检查功能是否正常。之前你遇到的H5P版本兼容问题,在PHP升级后也是否解决。

4、 数据备份

  • 操作前,请备份重要的PHP配置文件(如 /etc/php/apache/8.1/ 下的php.ini及conf.d/中的自定义配置)和Web服务器配置。

  • 只有在确认所有网站和依赖PHP的应用在8.2上运行稳定后,才建议卸载PHP 8.1以保持系统整洁。

相关推荐
bing_feilong2 小时前
windows和ubuntu: ssh失败
网络·ubuntu·ssh
啦啦啦小石头2 小时前
Ubuntu 下载google drive上的大文件
ubuntu
半壶清水2 小时前
ubuntu中使用使用Docker-Compose管理MySQL、Apache、PHP容器
mysql·ubuntu·docker·php·apache
X.Ming 同学2 小时前
QXlsx 库在麒麟 Linux(Qt 5.15.2)下完整安装步骤(含问题排查 & 经验总结)
linux·数据库·qt
杰克崔2 小时前
localtime接口与localtime_r接口
linux·运维·服务器·车载系统
HalvmånEver2 小时前
Linux:简介(进程间通信一)
linux·运维·服务器
未来之窗软件服务2 小时前
幽冥大陆(六十四) PHP7.0 SSL 文字解密—东方仙盟筑基期
php·ssl·加解密·仙盟创梦ide·东方仙盟
代码游侠2 小时前
学习笔记——数据封包拆包与协议
linux·运维·开发语言·网络·笔记·学习
FIT2CLOUD飞致云2 小时前
支持IP证书签发、数据库TCP代理,1Panel v2.0.16版本正式发布
linux·运维·服务器·开源·1panel·ip证书