加油
努力

在阿里云Alibaba Cloud Linux 3系统中如何部署LAMP架构?

在阿里云 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),可继续提问!

云服务器