加油
努力

如何在Alibaba Cloud Linux 3上配置LAMP环境?

Alibaba Cloud Linux 3(基于 RHEL/CentOS 的优化发行版)上配置 LAMP 环境(Linux + Apache + MySQL/MariaDB + PHP),可以按照以下步骤进行操作。本文将使用 MariaDB 替代 MySQL,因为其在大多数现代 Linux 发行版中是默认的数据库。


✅ 步骤一:更新系统

首先确保系统是最新的:

sudo dnf update -y

Alibaba Cloud Linux 3 使用 dnf 包管理器。


✅ 步骤二:安装 Apache(httpd)

  1. 安装 Apache:
sudo dnf install httpd -y
  1. 启动并启用 Apache 开机自启:
sudo systemctl enable httpd
sudo systemctl start httpd
  1. 检查状态:
sudo systemctl status httpd
  1. 配置防火墙允许 HTTP/HTTPS:
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

如果你使用的是阿里云 ECS 实例,请同时在 安全组规则 中放行端口 80 和 443。

  1. 测试 Apache 是否正常工作:

在浏览器中访问你的服务器公网 IP 地址,应看到 Apache 默认页面(可能显示 “Testing 123…” 或类似内容)。


✅ 步骤三:安装 MariaDB(MySQL 替代品)

  1. 安装 MariaDB 服务器和客户端:
sudo dnf install mariadb-server mariadb -y
  1. 启动并启用 MariaDB:
sudo systemctl enable mariadb
sudo systemctl start mariadb
  1. 运行安全初始化脚本(设置 root 密码、移除匿名用户等):
sudo mysql_secure_installation

按提示操作:

  • 设置 root 密码
  • 移除匿名用户
  • 禁止 root 远程登录
  • 删除测试数据库
  • 重新加载权限表

✅ 步骤四:安装 PHP

  1. 安装 PHP 及常用扩展(LAMP 常用):
sudo dnf install php php-mysqlnd php-gd php-xml php-mbstring php-json php-cli php-fpm -y
  1. 验证 PHP 安装:
php -v
  1. 创建一个测试 PHP 文件以验证 Apache 能解析 PHP:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
  1. 重启 Apache 使 PHP 生效:
sudo systemctl restart httpd
  1. 在浏览器中访问:http://<your-server-ip>/info.php

你应该看到 PHP 信息页面,说明 PHP 已正确集成。


✅ 步骤五:测试数据库连接(可选)

创建一个简单的 PHP 脚本来测试与 MariaDB 的连接。

  1. 创建测试文件:
sudo tee /var/www/html/test_db.php << 'EOF'
<?php
$servername = "localhost";
$username = "root";
$password = "your_root_password";

// 创建连接
$conn = new mysqli($servername, $username, $password);

// 检查连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}
echo "成功连接到 MariaDB 数据库!";
?>
EOF

⚠️ 将 your_root_password 替换为你在 mysql_secure_installation 中设置的密码。

  1. 访问 http://<your-ip>/test_db.php 查看是否连接成功。

🔒 生产环境中请删除此类测试文件。


✅ (可选)配置时区等 PHP 设置

编辑 PHP 配置文件:

sudo vi /etc/php.ini

修改以下项(例如设置时区):

date.timezone = Asia/Shanghai

保存后重启 Apache:

sudo systemctl restart httpd

✅ 总结:LAMP 组件状态检查

组件 命令示例
Apache systemctl status httpd
MariaDB systemctl status mariadb
PHP php -v
防火墙 firewall-cmd --list-services

🛡️ 安全建议

  • 不要将 info.phptest_db.php 留在生产环境。
  • 使用 .htaccess 或目录权限保护敏感文件。
  • 定期更新系统和软件包。
  • 使用非 root 用户操作数据库,避免直接使用 root 连接应用。

完成以上步骤后,你的 Alibaba Cloud Linux 3 上就成功搭建了 LAMP 环境,可以部署 WordPress、Drupal、自定义网站等 PHP 应用程序。

如有需要,我也可以提供一键安装脚本或部署常见应用(如 WordPress)的指南。

云服务器