如何在 Ubuntu 24.04 上安装多PHP版本 (从8.3到5.6) ?

PHP 代表超文本预处理器,它仍然是网络的基石,为互联网上很大一部分网站和网络应用程序提供动力。大多数顶级网站和博客工具仍然使用 PHP,如 WordPress, Facebook, Wikipedia 等。如果你在 Ubuntu 24.04 上为 web 开发,安装 PHP 可能是你要承担的首要任务之一。

本指南将向您展示如何在 Ubuntu 24.04 系统上安装不同版本的 PHP (从 8.3 到 5.6)。

必备条件

  • A system running Ubuntu 24.04
  • Sudo privileges
  • Internet connection

Step 1: Update Your System

首先,确保更新系统。

复制代码
sudo apt update
sudo apt upgrade -y

Step 2: Install Software Properties Common

Ubuntu 24.04 应该安装了 software-properties-common,如果没有,使用下面的命令安装它。

复制代码
sudo apt install software-properties-common -y

Step 3: Add PHP Repository

为了确保访问最新的 PHP 版本,包括 8.3、8.2 和 7.4,建议添加第三方存储库,例如:Ondřej Surý PPA,这在 Ubuntu 社区中广受信任,这个存储库包含用于 Active LTS 版本的更新的 PHP Debian 软件包。

使用以下命令将 PHP 存储库添加到系统中

复制代码
LC_ALL=C.UTF-8 sudo add-apt-repository ppa:ondrej/php -y
sudo apt update

Step 4: Install PHP

将存储库添加到系统后,就可以继续安装 PHP 和所需的模块。您可以选择安装 PHP 8.3、8.2、8.1、8.0、7.4、7.3、7.2、7.1、7.1 或 5.6,这取决于您的应用程序需求。

For PHP 8.3

复制代码
sudo apt install php8.3 -y

For PHP 8.2

复制代码
sudo apt install php8.2 -y

For PHP 7.4

复制代码
sudo apt install php7.4 -y

Step 5: Verify Installation

安装完成后,可以通过检查版本来验证 PHP 安装是否正确。

复制代码
php -v

该命令输出您安装的默认PHP 版本,以及一些附加信息。要查看其他 php 版本,请使用命令:php8.3 -v ', php8.2 -vphp7.4 -v 等。

Step 6: Install PHP Extensions

PHP 扩展增强或添加 PHP 功能,要安装扩展,可以使用以下命令。

复制代码
sudo apt install phpX.X-extension_name

下面是为 PHP 8.3 安装 MySQL 扩展的示例

复制代码
sudo apt install php8.3-mysql

下面是为 PHP 7.4 安装 MySQL 扩展的示例

复制代码
sudo apt install php7.4-mysql

Step 7: Install PHP Composer (Optional)

Composer 是用于 PHP 应用程序的依赖项管理工具。虽然 Composer 并不是每个项目都必需的,但对于希望简化工作流程并确保正确安装和管理项目依赖项的开发人员来说,它是非常有价值的资产。您可以通过执行以下命令来安装它。

复制代码
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php
php -r "unlink('composer-setup.php');"

Step 7: Configure PHP (Optional)

优化 PHP 配置可以提高项目的性能,主配置文件 php.ini 可能的位置如下:

  • Apache: /etc/php/X.X/apache/php.ini
  • CLI: /etc/php/X.X/cli/php.ini
  • FPM: /etc/php/X.X/fpm/php.ini

记住将 X.X 替换为您的 PHP 版本。FPM 通常由 Nginx 使用,有时在使用非默认 PHP 版本的应用程序中与 Apache 一起使用。

我的开源项目

相关推荐
AlfredZhao1 小时前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
戴为沐1 天前
Linux内存扩容指南
linux
zylyehuo2 天前
Linux 彻底且安全地删除文件
linux
用户805533698032 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297912 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
Web3探索者4 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo4 天前
Linux系统中网线与USB网络共享冲突
linux
Sokach10155 天前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux
AlfredZhao6 天前
Docker 容器时区不对,`timedatectl` 不存在怎么办?
linux·timezone
两个人的幸福7 天前
Windows 桌面应用自研 PHP 队列(下):完整代码与六大工程化优化
php