OpenCloudOS 如何安装PHP?

云计算

在 OpenCloudOS(基于 CentOS/RHEL 体系)上安装 PHP,通常推荐使用系统自带的 AppStreamBaseOS 软件源中的 php 模块,这样能确保与系统包管理器和安全更新兼容。以下是标准安装步骤:


✅ 推荐方式:使用 dnf + 模块化安装(OpenCloudOS 8/9)

1. 确认系统版本

cat /etc/opencloudos-release
# 或
rpm -q opencloudos-release

2. 启用 AppStream 源(若未默认启用)

OpenCloudOS 8/9 中,PHP 通常位于 AppStream 仓库:

sudo dnf config-manager --set-enabled appstream

💡 注意:若使用的是最小化安装镜像,可能需先配置基础源。可通过以下命令验证:

sudo dnf repolist
# 检查输出中是否包含 "appstream"

3. 查看可用 PHP 版本

sudo dnf module list php

示例输出:

Name                     Stream      Profiles        Summary
php                      7.4         common, devel   [D] Default profile: common
                         8.0         common, devel   [D]
                         8.1         common, devel   [D]
                         8.2         common, devel   [D]

4. 选择并安装指定版本(以 PHP 8.2 为例)

# 设置模块流为 8.2
sudo dnf module enable php:8.2

# 安装常用组件(web、cli、mysqlnd、gd、mbstring 等)
sudo dnf install php php-fpm php-mysqlnd php-gd php-mbstring php-xml php-json php-opcache

🔔 提示:

  • php-fpm 用于配合 Nginx/Apache 作为 FastCGI;
  • 若用 Apache,可额外安装 mod_php(但更推荐 FPM);
  • 可选扩展如 php-pdo, php-curl, php-zip 按需添加。

5. 启动服务并设置开机自启

sudo systemctl enable --now php-fpm
# 若需 CLI 测试,无需启动服务,直接运行:
php -v

6. 验证安装

php -v          # 查看版本
php --ini       # 查看配置文件路径
systemctl status php-fpm

📝 补充说明

场景 建议
生产环境 优先使用 dnf 安装的官方模块版,避免第三方源风险
多版本共存 可使用 alt-php 工具链(如 scl),但较复杂;更推荐容器化(Docker)隔离
旧版依赖 若必须 PHP 7.4,请明确启用 php:7.4 流(部分新版已移除)
自定义编译 不推荐,除非有特殊扩展需求(如特定 PECL 模块),否则维护成本高

❌ 避免的做法

  • 不要手动下载 .tar.gz 源码编译(除非确有必要),易导致依赖冲突、无法通过 dnf update 修复漏洞。
  • 不要随意添加 EPEL 以外的第三方 PHP 源(如 remi),除非经过严格评估。

需要我根据你的具体场景(如:搭配 Nginx + MySQL + WordPress,或 Laravel 项目)提供完整部署方案吗?