ubuntu 22.04 默认不带 php 8.2.32,必须添加 ppa:ondrej/php 源并更新,再显式安装 php8.2-cli、php8.2-fpm(nginx)或 libapache2-mod-php8.2(apache),通过 update-alternatives 设默认版本,最后 systemctl enable --now php8.2-fpm 或 apache2 实现开机自启。

Ubuntu 22.04 默认不带 PHP 8.2.32,必须通过第三方 PPA 源安装,并手动配置开机自启。直接 apt install php8.2 会报 “Unable to locate package”,因为官方源只提供 PHP 8.1。关键在于加源、装对组件、设默认版本、启动服务并持久化。
添加 PPA 源并更新包列表
Ubuntu 22.04 需依赖 Ondřej Surý 维护的 PPA 才能获取 PHP 8.2(含 8.2.32 小版本)。操作前确保基础工具已就位:
- 若
add-apt-repository命令不存在,先运行:sudo apt install -y software-properties-common - 添加源并刷新:
sudo add-apt-repository ppa:ondrej/php -y && sudo apt update - 验证源是否生效:
apt list php8.2*应能看到php8.2/22.04,now 8.2.32-1+ubuntu22.04.1+deb.sury.org+1类似输出
安装 PHP 8.2.32 及必要组件
根据 Web 服务器类型选择安装方式,不可混用:
-
Nginx 用户:安装 FPM 模式
sudo apt install -y php8.2-cli php8.2-fpm php8.2-mysql php8.2-mbstring php8.2-xml php8.2-zip php8.2-bcmath php8.2-opcache -
Apache 用户:安装模块模式
sudo apt install -y libapache2-mod-php8.2 php8.2-cli php8.2-mysql php8.2-mbstring php8.2-xml php8.2-zip - 安装后立即启用 Apache 模块:
sudo a2enmod php8.2(Apache 用户必做)
设为系统默认 PHP 版本
即使装了 8.2.32,php -v 仍可能显示旧版(如 8.1),因 /usr/bin/php 是软链,默认未切换:
- 查看所有已安装 PHP 二进制:
ls /usr/bin/php*—— 确认存在/usr/bin/php8.2 - 设置默认版本:
sudo update-alternatives --install /usr/bin/php php /usr/bin/php8.2 82sudo update-alternatives --set php /usr/bin/php8.2 - 验证:
php -v输出应为PHP 8.2.32;which php应返回/usr/bin/php
配置开机自启(CLI + FPM / Apache)
Ubuntu 使用 systemd 管理服务,需分别处理 CLI(无需开机启)、FPM(Nginx 依赖)和 Web 服务本身:
-
FPM 用户(Nginx 场景):
sudo systemctl enable --now php8.2-fpm
注意:若启动失败提示No such file or directory(socket 路径缺失),先执行:sudo mkdir -p /run/php && sudo chown www-data:www-data /run/php -
Apache 用户:
Apache 自身需开机自启,PHP 模块随 Apache 加载,无需单独启 PHP 服务:sudo systemctl enable --now apache2 - 验证开机自启状态:
systemctl is-enabled php8.2-fpm或systemctl is-enabled apache2应返回enabled
完成后重启系统测试:终端中 php -v 和 Web 中访问 phpinfo() 页面均应显示 8.2.32,且服务在重启后自动运行。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











