在腾讯云 OpenCloudOS 服务器上安装 LAMP(Linux, Apache, MySQL, PHP)环境,由于 OpenCloudOS 兼容 CentOS/RHEL 体系,主要使用 dnf 或 yum 包管理器。以下是基于 OpenCloudOS 8/9 的标准安装步骤:
1. 系统更新与基础准备
首先更新系统软件源并安装必要的开发工具,确保编译和依赖库完整。
# 刷新缓存并升级系统
sudo dnf update -y
# 安装基础工具和开发库(部分模块可能需要这些头文件)
sudo dnf groupinstall "Development Tools" -y
sudo dnf install epel-release -y
2. 安装 Apache (HTTPD)
OpenCloudOS 8/9 中 Apache 的包名通常为 httpd。
# 安装 Apache
sudo dnf install httpd -y
# 启动服务并设置开机自启
sudo systemctl start httpd
sudo systemctl enable httpd
# 检查状态
systemctl status httpd
注意:如果服务器开启了防火墙,需要放行 HTTP/HTTPS 端口。
sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo firewall-cmd --reload如果是腾讯云安全组,请同时在控制台开放 80 和 443 端口。
3. 安装 MariaDB (MySQL 替代方案)
OpenCloudOS 默认推荐使用 MariaDB 作为 MySQL 的替代品,性能更好且完全兼容。
# 安装 MariaDB 服务端、客户端和服务管理工具
sudo dnf install mariadb-server mariadb -y
# 启动服务并设置开机自启
sudo systemctl start mariadb
sudo systemctl enable mariadb
# 运行安全初始化脚本(设置 root 密码等)
sudo mysql_secure_installation
执行 mysql_secure_installation 时,按提示操作(通常直接回车跳过旧密码验证,设置新 root 密码,移除匿名用户,禁止远程 root 登录等)。
4. 安装 PHP 及扩展
根据需求安装 PHP 核心及常用扩展(如 GD, JSON, XML, PDO 等)。OpenCloudOS 8/9 默认 PHP 版本通常为 PHP 8.0 或 8.1。
# 安装 PHP 核心及常用 Web 扩展
sudo dnf install php php-fpm php-mysqlnd php-gd php-json php-xml php-mbstring php-opcache php-bcmath -y
5. 配置 Apache 以支持 PHP
为了让 Apache 能够解析 .php 文件,需要加载 PHP 模块并修改默认首页顺序。
# 编辑 Apache 配置文件
sudo vi /etc/httpd/conf.d/php.conf
# 如果该文件不存在,可以创建一个,或者直接在主配置中添加。
# 更通用的做法是确保安装了 mod_php 对应的包(上面已安装),Apache 会自动加载。
# 但为了确保 .php 被识别,需确认 /etc/httpd/conf/httpd.conf 中包含以下行(通常在末尾):
# AddType application/x-httpd-php .php
# AddType application/x-httpd-php-source .phps
更推荐的做法:确保 mod_php 模块已加载。通常安装 php 包后,OpenCloudOS 会自动生成 /etc/httpd/conf.d/php.conf 并包含必要的 LoadModule 指令。
重启 Apache 使配置生效:
sudo systemctl restart httpd
6. 测试环境是否成功
创建一个测试页面来验证 LAMP 环境是否正常工作。
# 创建测试文件
sudo vi /var/www/html/info.php
输入以下内容:
<?php
phpinfo();
?>
保存退出后,在浏览器访问:http://<你的服务器公网IP>/info.php。
如果看到 PHP 信息页面,说明 LAMP 环境安装成功。
7. 清理与优化(可选)
为了安全起见,生产环境建议删除测试文件:
sudo rm /var/www/html/info.php
常见问题排查
- 端口被占用:如果
systemctl start httpd失败,检查是否有其他进程占用 80 端口 (netstat -tlnp | grep :80)。 - SELinux 问题:如果网站无法访问或权限错误,尝试临时关闭 SELinux 测试 (
setenforce 0),若解决则需调整策略而非永久关闭。 - PHP-FPM 模式:如果你计划使用 Nginx 或高性能场景,也可以配置 Apache 通过
proxy_fcgi调用 PHP-FPM,但在 OpenCloudOS 上默认的mod_php模式对大多数应用已足够稳定。
按照以上步骤,即可在腾讯云 OpenCloudOS 上完成标准的 LAMP 环境部署。
CLOUD技术博