---
title: 'LAMP-стек на Ubuntu: Apache + MySQL + PHP для начинающих | Zomro'
description: ''
image: 'https://cdn.zomro.com/uploads/blog/a48%40server-panel.net/2026/06/29/00-cover_TXhYSyf_q50.jpg'
---

![opened image]()

  * [Zomro](https://zomro.com/rus/)
  * [FAQ](https://zomro.com/rus/blog/faq/)
  * LAMP-стек на Ubuntu: Apache + MySQL + PHP для начинающих 



# LAMP-стек на Ubuntu: Apache + MySQL + PHP для начинающих

29-06-2026

![](https://cdn.zomro.com/uploads/blog/a48%40server-panel.net/2026/06/29/00-cover_TXhYSyf_q50.jpg)

Установить Apache, MySQL и PHP на Ubuntu - задача на 20-30 минут при наличии чистого сервера. В этой статье пройдём весь путь: от установки пакетов до рабочего VirtualHost с SSL-сертификатом от Let's Encrypt.

## Что понадобится

  * Сервер или VPS с Ubuntu 22.04 LTS или 24.04 LTS

  * Минимум 1 GB RAM, 10 GB диска

  * Root-доступ или пользователь с sudo

  * Зарегистрированный домен, если планируете SSL




## Обновление системы
    
    
    sudo apt update && sudo apt upgrade -y
    sudo reboot

После перезагрузки подключитесь снова. Проверьте версию ядра:
    
    
    uname -r
    # 6.8.0-35-generic

![](https://cdn.zomro.com/uploads/blog/a48%40server-panel.net/2026/06/29/01-uname-lsb-release_q50.jpg)

## 

## 

## Установка Apache
    
    
    sudo apt install -y apache2
    sudo systemctl enable apache2
    sudo systemctl start apache2

Проверьте статус:
    
    
    sudo systemctl status apache2

Откройте порты в файрволе:
    
    
    sudo ufw allow 'Apache Full'
    sudo ufw enable
    sudo ufw status

Apache 2.4 теперь отвечает на порту 80. Перейдите по IP-адресу сервера в браузере - появится страница-заглушка «Apache2 Ubuntu Default Page».

Полезные команды управления Apache:
    
    
    sudo apache2ctl configtest    # проверка синтаксиса конфигов
    sudo systemctl reload apache2  # перезагрузка без прерывания
    sudo apache2ctl -M             # список загруженных модулей

## 

## 

## Установка MySQL 8
    
    
    sudo apt install -y mysql-server
    sudo systemctl enable mysql

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

Скрипт предложит:

  1. Настроить VALIDATE PASSWORD COMPONENT - выберите уровень 1 (MEDIUM) для продакшена

  2. Установить пароль root (или пропустить, если работаете через Unix-сокет)

  3. Удалить анонимных пользователей - Yes

  4. Запретить удалённый root-логин - Yes

  5. Удалить тестовую базу test - Yes

  6. Перезагрузить таблицы привилегий - Yes



    
    
    mysql --version
    # mysql  Ver 8.0.37-0ubuntu0.24.04.1

![](https://cdn.zomro.com/uploads/blog/a48%40server-panel.net/2026/06/29/02-mysql-secure-installation_q50.jpg)

## 

## 

## Установка PHP 8.3

Для Ubuntu 24.04 PHP 8.3 доступен в стандартных репозиториях. Для Ubuntu 22.04 добавьте PPA:
    
    
    # Только для Ubuntu 22.04:
    sudo add-apt-repository ppa:ondrej/php -y
    sudo apt update

Установите PHP и нужные модули:
    
    
    sudo apt install -y php8.3 libapache2-mod-php8.3 php8.3-mysql \
      php8.3-curl php8.3-mbstring php8.3-xml php8.3-zip php8.3-gd \
      php8.3-intl php8.3-bcmath

`libapache2-mod-php8.3` \- это mod_php, который интегрирует PHP прямо в процесс Apache. В отличие от LEMP, где PHP-FPM работает отдельно, здесь PHP выполняется внутри Apache.

Перезапустите Apache и проверьте PHP:
    
    
    sudo systemctl restart apache2
    php --version
    # PHP 8.3.6 (cli)

### 

### 

### Тестовая страница phpinfo
    
    
    echo "<?php phpinfo();" | sudo tee /var/www/html/info.php

Откройте `http://YOUR_IP/info.php` в браузере. Убедитесь, что в таблице отображается `PHP Version 8.3.x` и модуль `mysqli` или `pdo_mysql` активен. После проверки удалите файл:
    
    
    sudo rm /var/www/html/info.php

## 

## 

## Настройка VirtualHost

Создайте директорию для сайта:
    
    
    sudo mkdir -p /var/www/example.com/public
    sudo chown -R www-data:www-data /var/www/example.com
    sudo chmod -R 755 /var/www/example.com

Создайте тестовый файл:
    
    
    cat << 'EOF' | sudo tee /var/www/example.com/public/index.php
    <?php
    echo "<h1>LAMP работает!</h1>";
    echo "<p>PHP " . PHP_VERSION . "</p>";
    EOF

Создайте конфиг VirtualHost:
    
    
    sudo nano /etc/apache2/sites-available/example.com.conf
    
    
    <VirtualHost *:80>
        ServerName example.com
        ServerAlias www.example.com
        DocumentRoot /var/www/example.com/public
        ErrorLog ${APACHE_LOG_DIR}/example.com-error.log
        CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined
    
        <Directory /var/www/example.com/public>
            AllowOverride All
            Require all granted
        </Directory>
    </VirtualHost>

Активируйте хост и модуль rewrite:
    
    
    sudo a2ensite example.com.conf
    sudo a2enmod rewrite
    sudo a2dissite 000-default.conf
    sudo apache2ctl configtest
    sudo systemctl reload apache2

## 

## 

## Создание базы данных
    
    
    sudo mysql -u root
    
    
    CREATE DATABASE example_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
    CREATE USER 'example_user'@'localhost' IDENTIFIED BY 'SecurePass_2024!';
    GRANT ALL PRIVILEGES ON example_db.* TO 'example_user'@'localhost';
    FLUSH PRIVILEGES;
    EXIT;

Проверьте подключение из PHP. Создайте файл `/var/www/example.com/public/dbtest.php`:
    
    
    <?php
    $conn = new PDO('mysql:host=localhost;dbname=example_db', 'example_user', 'SecurePass_2024!');
    echo "Подключение к MySQL: " . $conn->getAttribute(PDO::ATTR_SERVER_VERSION);

После проверки удалите файл.

## SSL через Certbot

Установите Certbot с плагином Apache:
    
    
    sudo apt install -y certbot python3-certbot-apache

Получите сертификат:
    
    
    sudo certbot --apache -d example.com -d www.example.com

Certbot автоматически:

  * Создаст сертификат Let's Encrypt (действителен 90 дней)

  * Добавит конфиг для порта 443

  * Настроит редирект с HTTP на HTTPS




Проверьте автопродление:
    
    
    sudo certbot renew --dry-run

Если команда завершилась без ошибок, cron-задача (или systemd-таймер) продлит сертификат раньше истечения. Certbot сам добавляет таймер `/etc/cron.d/certbot` при установке.

## Структура файлов после настройки
    
    
    /var/www/example.com/public/    - корень сайта
    /etc/apache2/sites-available/   - конфиги виртуальных хостов
    /etc/apache2/sites-enabled/     - симлинки на активные хосты
    /etc/letsencrypt/live/          - сертификаты Let's Encrypt
    /var/log/apache2/               - логи доступа и ошибок

## 

## 

## Итог

Рабочий LAMP-стек на Ubuntu включает Apache 2.4, MySQL 8.0, PHP 8.3 с mod_php и SSL-сертификат от Let's Encrypt. Стек подходит для любых PHP-приложений, особенно тех, которые активно используют `.htaccess` \- WordPress, Laravel, Drupal. Для высоконагруженных сайтов стоит рассмотреть LEMP с PHP-FPM: Nginx потребляет меньше памяти при большом числе соединений.

Похожие статьи

[Как предоставить доступ к Windows Server по IP или диапазону IP](https://zomro.com/rus/blog/faq/337-kak-ogranichit-dostup-k-windows-server-po-ip) [Сброс пароля админа в DLE](https://zomro.com/rus/blog/faq/445-sbros-parolya-admina-v-dle) [Как локации в Центральной Европе, Северной Америке и Азии влияют на торговлю на MT4/MT5](https://zomro.com/rus/blog/faq/574-data-centre-geolocation-how-central-europe-north-america-and-asia-affect-mt4mt5-trading) [Как установить Nginx в Docker-Compose](https://zomro.com/rus/blog/faq/317-kak-ustanovit-nginx-v-docker-compose) [Установка Yii 2.0](https://zomro.com/rus/blog/faq/208-ustanovka-yii-20)

[ Выделенный сервер с GPU от €174.80/мес ](/dedicated-servers/type=gpu)
