Установка, настройка и удаление LAMP-сервера в Linux: полное руководство для популярных дистрибутивов

LAMP-сервер — это классический и мощный стек для развёртывания веб-приложений, состоящий из Linux, Apache, MySQL/MariaDB и PHP. Это основа для множества CMS (WordPress, Joomla) и веб-фреймворков. В этом подробном руководстве мы разберём, как установить, настроить и полностью удалить LAMP-сервер в трёх основных семействах дистрибутивов Linux: Ubuntu/Debian, Fedora/RHEL и Arch Linux/Manjaro.

Что такое LAMP и зачем он нужен?

Схема архитектуры и взаимодействия компонентов LAMP-стека (Linux, Apache, MySQL, PHP)
Взаимодействие компонентов в стеке LAMP: браузер, Apache, PHP и база данных MySQL

Акроним LAMP описывает четыре ключевых компонента современного веб-сервера:

  • Linux — операционная система.

  • Apache — веб-сервер, обрабатывающий HTTP-запросы.

  • MySQL/MariaDB — система управления реляционными базами данных для хранения информации.

  • PHP — скриптовый язык программирования для создания динамического контента.

Этот стек идеально подходит для локальной разработки, тестирования и развёртывания широкого спектра веб-проектов.

Часть 1: Установка LAMP-сервера в разных дистрибутивах

Пример выполнения команд установки LAMP-сервера в терминале Ubuntu Linux
Процесс установки компонентов LAMP через терминал в дистрибутивах Debian/Ubuntu

Для дистрибутивов на основе Debian/Ubuntu (Ubuntu, Linux Mint, Debian)

# 1. Обновление системы и установка Apache2

sudo apt update && sudo apt upgrade -y

sudo apt install apache2 -y

sudo systemctl enable —now apache2

# 2. Установка MySQL Server

sudo apt install mysql-server -y

sudo systemctl enable —now mysql

# Запуск скрипта начальной настройки безопасности:

sudo mysql_secure_installation

# 3. Установка PHP и основных модулей

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

sudo systemctl restart apache2

Для дистрибутивов на основе Fedora/RHEL (Fedora, CentOS, AlmaLinux)

# 1. Обновление системы и установка Apache (httpd)

sudo dnf update -y

sudo dnf install httpd -y

sudo systemctl enable —now httpd

# Настройка фаервола:

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

# 2. Установка MariaDB (аналог MySQL)

sudo dnf install mariadb-server mariadb -y

sudo systemctl enable —now mariadb

sudo mysql_secure_installation

# 3. Установка PHP

sudo dnf install php php-mysqlnd php-curl php-gd php-json php-mbstring php-xml php-zip -y

sudo systemctl restart httpd

Для дистрибутивов на основе Arch (Arch Linux, Manjaro)

# 1. Обновление системы и установка Apache

sudo pacman -Syu —noconfirm sudo pacman -S apache —noconfirm sudo systemctl enable —now httpd

# 2. Установка MariaDB

sudo pacman -S mariadb —noconfirm

sudo mysql_install_db —user=mysql —basedir=/usr —datadir=/var/lib/mysql

sudo systemctl enable —now mysqld sudo mysql_secure_installation

# 3. Установка PHP и интеграции с Apache

sudo pacman -S php php-apache php-gd —noconfirm

# Требуется ручная настройка /etc/httpd/conf/httpd.conf для работы PHP

sudo systemctl restart httpd

Часть 2: Базовая настройка и проверка работоспособности

После установки необходимо проверить, что все компоненты работают корректно.

Проверка Apache

Откройте браузер и перейдите по адресу http://localhost или http://ваш_ip_адрес. Должна появиться тестовая страница Apache.

Проверка PHP

Создайте тестовый PHP-файл в корневой веб-директории:

  • Ubuntu/Debian: /var/www/html/info.php

  • Fedora/RHEL: /var/www/html/info.php

  • Arch: /srv/http/info.php

Добавьте в файл содержимое: <?php phpinfo(); ?>
Сохраните файл и откройте в браузере http://localhost/info.php. Вы увидите страницу с подробной информацией о конфигурации PHP.

Настройка MySQL/MariaDB

После выполнения mysql_secure_installation вы можете войти в консоль MySQL:

sudo mysql -u root -p

Создайте тестовую базу данных и пользователя для ваших веб-проектов.

Страница phpinfo(), отображающая информацию о PHP после установки LAMP-сервера
Тестовая страница phpinfo() подтверждает корректную работу PHP в связке с Apache

Часть 3: Полное удаление LAMP-сервера

Если LAMP-сервер больше не нужен, важно удалить его полностью, чтобы освободить ресурсы и избежать конфликтов.

Для дистрибутивов на основе Debian/Ubuntu

# Остановка служб

sudo systemctl stop apache2 mysql

# Удаление пакетов

sudo apt purge apache2 apache2-utils apache2-bin apache2-data mysql-server mysql-client mysql-common php* -y

# Удаление зависимостей и конфигураций

sudo apt autoremove -y —purge sudo rm -rf /var/lib/mysql /etc/mysql /var/www/html/*

Для дистрибутивов на основе Fedora/RHEL

# Остановка служб

sudo systemctl stop httpd mariadb

# Удаление пакетов

sudo dnf remove httpd mariadb-server mariadb php* -y

# Очистка

sudo dnf autoremove -y sudo rm -rf /var/lib/mysql /etc/my.cnf*

Для дистрибутивов на основе Arch

# Остановка служб

sudo systemctl stop httpd mysqld

# Удаление пакетов

sudo pacman -Rns apache mariadb php php-apache —noconfirm

# Очистка оставшихся файлов

sudo rm -rf /var/lib/mysql /etc/httpd /etc/php

Итоги и рекомендации

Вы успешно установили, настроили и научились удалять LAMP-сервер в различных дистрибутивах Linux. Ключевые моменты:

  1. Установка требует разных команд для apt, dnf и pacman.

  2. Настройка безопасности MySQL/MariaDB через mysql_secure_installation обязательна.

  3. Проверка через тестовые страницы Apache и PHP подтверждает корректность установки.

  4. Полное удаление включает остановку служб, удаление пакетов и очистку конфигурационных файлов.

Для рабочих серверов дополнительно настройте:

  • Виртуальные хосты в Apache для нескольких сайтов

  • Регулярное обновление компонентов стека

  • Настройку брандмауэра и ограничение доступа к административным интерфейсам

Теперь вы готовы к развёртыванию веб-приложений на базе надежного LAMP-стека.