在 Ubuntu 18.04.1 LTS 上安全地将 PHP 从 5.6.38 升级到 PHP 7.2+

在 Ubuntu 18.04.1 LTS 上安全地将 PHP 从 5.6.38 升级到 PHP 7.2+

我在 Ubuntu 18.04.1 LTS 上运行一个生产服务器,其中安装了 PHP 5.6.38。它正在为 PHP 5x 应用程序提供服务,但由于composer其他要求,我需要在最新版本的 PHP 上安全地升级它(从 12 月 6 日起升级为 PHP 7.3)或至少7.2。

我没有选择创建一个带有最新 PHP 版本的全新服务器并将所有内容迁移到那里。我只需要一个安全且干净的 PHP 升级。

我读过了本文它使用允许多个 PHP 版本的 APT 存储库ppa:ondrej/php。我不想保留 PHP 5.6.38 或拥有多 PHP 环境。

我担心使用ppa:ondrej/phprepo 会如何影响我现有的 Apache 2 配置(该配置设置为与 PHP 5.6.38 一起使用),以及如果我最终使用 Ondrej 的 repo 进行升级,我必须在 Apache 2 配置中进行哪些更改才能使一切再次正常工作。

另外,我是否必须重新配置 Apache 2 才能与 PHP FPM 一起使用?

正如我之前所说,这是一个生产服务器,不幸的是我没有暂存/测试/迁移服务器作为故障安全解决方案。

答案1

首先,因为它是一台生产服务器:做一些备份!!!

添加 Ondrej 的 repo:

使用起来非常安全ppa:ondrej/php

sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt upgrade

安装 PHP 7.3 并配置 Apache2

您没有提到您当前的设置是否使用 PHP FPM。如果您对多 PHP 环境不感兴趣,则不需要使用 FPM,因此我假设您不感兴趣。将 Apache2 使用的 PHP 版本从 5.6 迁移到 7.3 的安全方法是:

sudo apt install php7.3
sudo a2enmod php7.3
sudo a2dismod php5.6
sudo service apache2 restart

更新 PHP CLI:

您还提到了composer。它使用 PHP CLI,因此您必须安装php7.3-cli包:

sudo apt install php7.3-cli
sudo update-alternatives --set php /usr/bin/php7.3

清理(​​可选):

准备就绪后,请确保一切正常。这不是必需的,但如果您愿意,可以删除旧的 PHP 版本:

sudo apt purge php5.6*
sudo apt autoremove

相关内容