在阿里云 Alibaba Cloud Linux 3 系统中部署 LAMP 架构(Linux + Apache + MySQL/MariaDB + PHP)是一个常见且实用的 Web 服务器搭建任务。以下是详细的部署步骤。
🌐 LAMP 架构组成
- L:Alibaba Cloud Linux 3(基于 CentOS/RHEL)
- A:Apache HTTP Server(httpd)
- M:MySQL 或 MariaDB(推荐使用 MariaDB,兼容性好且开源)
- P:PHP
✅ 步骤一:更新系统
sudo dnf update -y
Alibaba Cloud Linux 3 使用
dnf作为包管理器。
✅ 步骤二:安装 Apache(HTTPD)
sudo dnf install httpd -y
启动并设置开机自启:
sudo systemctl enable httpd
sudo systemctl start httpd
检查状态:
sudo systemctl status httpd
开放防火墙端口(如果启用 firewalld):
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reload
测试:浏览器访问服务器公网 IP,应看到 Apache 默认页面。
✅ 步骤三:安装 MariaDB(替代 MySQL)
sudo dnf install mariadb-server mariadb -y
启动并设置开机自启:
sudo systemctl enable mariadb
sudo systemctl start mariadb
运行安全初始化脚本(设置 root 密码、移除匿名用户等):
sudo mysql_secure_installation
按提示操作:
- 设置 root 密码
- 移除匿名用户
- 禁止 root 远程登录
- 删除测试数据库
- 重新加载权限表
✅ 步骤四:安装 PHP
安装 PHP 及常用扩展(根据需求调整):
sudo dnf install php php-mysqlnd php-gd php-xml php-mbstring php-json php-fpm -y
php-mysqlnd是连接 MariaDB 所需的驱动。
验证 PHP 安装:
php -v
创建一个测试页面来验证 PHP 是否工作:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
访问 http://<你的服务器IP>/info.php,应看到 PHP 信息页。
✅ 步骤五:配置 Apache 支持 PHP
Apache 在安装 PHP 后通常会自动加载 PHP 模块,无需额外配置。
但你可以检查模块是否加载:
httpd -M | grep php
如果看不到 php_module,可能需要手动启用(一般不需要)。
✅ 步骤六:测试数据库连接(可选)
创建一个 PHP 文件测试连接 MariaDB:
sudo tee /var/www/html/testdb.php << 'EOF'
<?php
$servername = "localhost";
$username = "root";
$password = "你的root密码";
try {
$conn = new PDO("mysql:host=$servername;dbname=mysql", $username, $password);
echo "✅ Connected to MariaDB successfully!";
} catch(PDOException $e) {
echo "Connection failed: " . $e->getMessage();
}
?>
EOF
替换 你的root密码 为实际密码,然后访问 http://<IP>/testdb.php 测试。
✅ 步骤七:设置文件权限和 SELinux(如启用)
Alibaba Cloud Linux 3 默认可能启用 SELinux,确保 Web 目录权限正确:
sudo chown -R apache:apache /var/www/html/
sudo chmod -R 755 /var/www/html/
如果遇到访问问题,检查 SELinux:
getenforce
如果是 Enforcing,可临时设为宽松模式测试:
sudo setenforce 0
或永久允许 httpd 访问网络和文件:
sudo setsebool -P httpd_can_network_connect_db 1
sudo setsebool -P httpd_read_user_content 1
✅ 可选:部署网站代码
将你的网站文件放入 /var/www/html/ 目录,例如:
sudo cp -r /path/to/your/web/files/* /var/www/html/
✅ 常见问题排查
| 问题 | 解决方法 |
|---|---|
| 页面无法访问 | 检查安全组规则是否放行 80 端口 |
| PHP 不解析 | 检查 httpd 是否重启,PHP 包是否安装 |
| 数据库连接失败 | 检查 MariaDB 是否运行,密码是否正确,SELinux 设置 |
| 权限错误 | 检查 /var/www/html 所属用户为 apache |
✅ 总结
你已经成功在 Alibaba Cloud Linux 3 上部署了 LAMP 架构!
- ✅ Apache 处理 HTTP 请求
- ✅ MariaDB 提供数据库服务
- ✅ PHP 支持动态网页和数据库交互
现在可以部署 WordPress、Drupal、自定义 PHP 应用等。
📌 提示:生产环境建议:
- 使用 Let’s Encrypt 配置 HTTPS(Certbot)
- 定期备份数据库
- 限制 root 用户远程登录
- 使用专用数据库用户而非 root
如需自动化部署,可结合 Shell 脚本或使用 Ansible。
如有具体应用(如 WordPress),可继续提问!
云小栈