温馨提示×

Linux LAMP怎么安装配置

小樊
45
2026-08-21 10:26:01
栏目: 智能运维

下面给你一份Linux 下 LAMP(Linux + Apache + MySQL/MariaDB + PHP)通用安装与配置教程,适用于 Ubuntu / Debian / CentOS / Rocky / AlmaLinux。我会按最常见场景讲,并给出不同系统的命令差异。


一、LAMP 是什么?

  • L:Linux(操作系统)
  • A:Apache(Web 服务器)
  • M:MySQL 或 MariaDB(数据库)
  • P:PHP(动态语言)

二、Ubuntu / Debian 安装 LAMP(最常用 ✅)

1️⃣ 更新系统

sudo apt update
sudo apt upgrade -y

2️⃣ 安装 Apache

sudo apt install apache2 -y

启动并设置开机自启:

sudo systemctl start apache2
sudo systemctl enable apache2

测试: 浏览器访问:

http://服务器IP

3️⃣ 安装 MariaDB(推荐)或 MySQL

安装 MariaDB

sudo apt install mariadb-server -y

安全初始化:

sudo mysql_secure_installation

设置 root 密码、删除测试库等(建议全部选 Y)


4️⃣ 安装 PHP

sudo apt install php libapache2-mod-php php-mysql php-cli php-curl php-xml php-mbstring -y

重启 Apache:

sudo systemctl restart apache2

5️⃣ 测试 PHP

创建测试文件:

sudo nano /var/www/html/info.php

内容:

<?php
phpinfo();

浏览器访问:

http://服务器IP/info.php

✅ 看到 PHP 信息页面说明成功


三、CentOS / Rocky / AlmaLinux 安装 LAMP

1️⃣ 更新系统

sudo dnf update -y

2️⃣ 安装 Apache

sudo dnf install httpd -y

启动并设置开机启动:

sudo systemctl start httpd
sudo systemctl enable httpd

防火墙放行:

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

3️⃣ 安装 MariaDB

sudo dnf install mariadb-server -y
sudo systemctl start mariadb
sudo systemctl enable mariadb
sudo mysql_secure_installation

4️⃣ 安装 PHP

sudo dnf install php php-mysqlnd php-xml php-mbstring php-json -y

重启 Apache:

sudo systemctl restart httpd

四、Apache 基本配置说明

网站根目录

  • Ubuntu/Debian:/var/www/html
  • CentOS/RHEL:/var/www/html

配置文件

  • Ubuntu:/etc/apache2/apache2.conf
  • CentOS:/etc/httpd/conf/httpd.conf

虚拟主机(示例)

<VirtualHost *:80>
    ServerName example.com
    DocumentRoot /var/www/html

    <Directory /var/www/html>
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

五、常见问题排查

❌ Apache 无法访问

systemctl status apache2   # Ubuntu
systemctl status httpd     # CentOS

❌ PHP 不解析

  • 确认 libapache2-mod-php 已安装
  • 重启 Apache

❌ 数据库连不上

sudo systemctl status mariadb

六、进阶建议

✅ 开启 HTTPS(Let’s Encrypt)
✅ 使用 php-fpm + Apache/Nginx
✅ 数据库远程访问安全配置
✅ 使用 防火墙 + SELinux


如果你愿意,可以告诉我:

  • ✅ 你的 Linux 发行版和版本
  • ✅ 是 本地虚拟机 / 云服务器
  • ✅ 是否用于 生产环境

我可以给你更精确的一套配置方案

0