Хостинг сайта на Ubuntu 24.04 LTS: NGINX, SSL и WordPress

Хостинг сайта на Ubuntu 24.04 LTS: NGINX, SSL и WordPress

Введение

В этой статье разберём, как подготовить сервер на Ubuntu 24.04 для запуска сайта на WordPress. Установим необходимые компоненты: веб‑сервер Nginx, базу данных MariaDB, PHP 8.3 и загрузим ядро WordPress.

WordPress остаётся одним из самых популярных движков для сайтов благодаря своей гибкости, широкому выбору тем и плагинов, а также открытой архитектуре. Однако для стабильной и безопасной работы сайта важно правильно настроить серверную часть — особенно если речь идёт о собственном VPS, а не готовом хостинге с предустановленным ПО.

В этом руководстве мы шаг за шагом настроим современную версию Ubuntu 24.04, чтобы ваш сервер был готов к размещению полноценного сайта на WordPress с поддержкой SSL и высокой производительностью.

Аренда VPS/VDS от 219 руб/месяц

Преимущества VPS в AdminVPS:

✓ Бесплатное администрирование

✓ Только быстрые NVMe-диски

✓ Защита от DDoS-атак

✓ Быстрая техподдержка

Аренда VPS/VDS виртуального сервера от AdminVPS — это прозрачная и честная услуга с доступной ценой

Подготовка сервера

Перед установкой компонентов выполните три критически важных шага. Не пропускайте их — это гарантирует стабильную работу системы.

Обновление системы (устраняет уязвимости в установленном ПО):

sudo apt update && sudo apt upgrade -y  

Разрешите минимально необходимые порты и активируйте UFW:

sudo ufw allow ssh    # 22/TCP
sudo ufw allow http   # 80/TCP
sudo ufw allow https  # 443/TCP 
sudo ufw enable  

Если подключение через SSH, выполняйте команду allow ssh до ufw enable — иначе потеряете доступ к серверу.

Убедитесь, что правила применены:

sudo ufw status  

Ожидаемый вывод
Ожидаемый вывод

Установка Nginx

Установка из стандартных репозиториев Ubuntu (рекомендуется для большинства):

sudo apt install nginx -y  

Преимущества этого способа:

  • пакет полностью интегрирован с системой (автоматические обновления безопасности);
  • стабильная версия, протестированная Canonical;
  • поддержка модулей, специфичных для Ubuntu.

Однако версия Nginx из репозитория Ubuntu может быть немного устаревшей. Для новейших функций установите веб-сервер из официального репозитория Nginx Inc.

Добавление репозитория:

curl -fsSL https://nginx.org/keys/nginx_signing.key | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/nginx.gpg

echo "deb http://nginx.org/packages/ubuntu `lsb_release -cs` nginx" | sudo tee /etc/apt/sources.list.d/nginx.list

sudo apt update  

Установка последней версии:

sudo apt install nginx -y  

Преимущества:

  • актуальная версия (на момент написания — 1.29.0);
  • поддержка новых протоколов (HTTP/3, QUIC);
  • расширенные возможности динамических модулей.

Недостатки:

  • требует ручного обновления при смене мажорных версий;
  • может конфликтовать с пакетами из репозиториев Ubuntu.

После установки запустите и проверьте службу (обязательно для обоих вариантов):

sudo systemctl enable --now nginx 
sudo systemctl status nginx  

Вывод должен показать active (running).

Nginx создаёт тестовую конфигурацию, которая конфликтует с будущими виртуальными хостами, поэтому отключите дефолтный сайт:

sudo unlink /etc/nginx/sites-enabled/default  

Протестируйте работоспособность:

curl -I 127.0.0.1  

Ожидаемый результат:

HTTP/1.1 404 Not Found 
Server: nginx/<версия>  

Мы отключили дефолтный сайт, поэтому код 404 — это нормально, главное — ответ от Nginx.

Если порт 80 занят Apache, то остановите его:

sudo systemctl stop apache2 && sudo systemctl disable apache2.

Установка MariaDB как СУБД для WordPress

MariaDB — форк MySQL, используемый по умолчанию в Ubuntu вместо оригинального MySQL.

Установка СУБД из репозитория Ubuntu (рекомендуется):

sudo apt install mariadb-server -y  

Второй вариант — установка из репозитория разработчиков. Импорт ключа:

sudo apt-get install apt-transport-https curl 
sudo curl -o /etc/apt/trusted.gpg.d/mariadb-release-keyring.asc 'https://mariadb.org/mariadb_release_signing_key.asc'  

Добавление репозитория:

sudo sh -c "echo 'deb https://mirror.mariadb.org/repo/10.11/ubuntu noble main' > /etc/apt/sources.list.d/mariadb.list" 
sudo apt update  

Установка:

sudo apt install mariadb-server -y  

Запустите службу:

sudo systemctl enable --now mariadb  

Проверьте статус, он должен быть active (running):

sudo systemctl status mariadb  

Тестовый запрос к СУБД:

sudo mysql -e "SHOW DATABASES;"  

Корректный результат
Корректный результат

Важное предупреждение

Не открывайте порт 3306 в файрволе до настройки политики доступа к базе данных.

Инсталляция PHP 8.3 с модулями для WordPress

PHP 8.3 — самая производительная версия языка на момент релиза Ubuntu 24.04. Установим её вместе с критически важными расширениями для WordPress.

Установка базовых пакетов

sudo apt install php-fpm php-mysql -y  

php-fpm — обработчик PHP-скриптов FastCGI Process Manager, а php-mysql — драйвер для работы с MariaDB/MySQL.

Установка дополнительных модулей:

sudo apt install php-curl php-gd php-mbstring php-xml php-zip -y  

Для чего эти модули:

  • php-curl — запросы к API, обновления плагинов;
  • php-gd — обработка изображений (миниатюры);
  • php-mbstring — поддержка UTF-8 (кириллица, эмодзи);
  • php-xml — парсинг XML (импорт/экспорт);
  • php-zip — работа с архивами (обновления).

Проверьте версию PHP, чтобы убедиться, что всё установлено корректно:

php -v  

Ожидаемый результат:

PHP 8.3.x (cli)  

Затем — список модулей:

php -m  

Убедитесь, что в выводе есть: curl, gd, mbstring, xml, zip.

Статус PHP-FPM (сервис должен быть активен):

sudo systemctl status php8.3-fpm  

Если нужны специфичные модули, их можно найти с помощью шаблона:

apt search php8.3-*  

Например, для Redis:

sudo apt install php8.3-redis -y  

Загрузка WordPress в корневую директорию

Теперь подготовим «чистый» WordPress — без конфигурации и настроек.

Создайте корневую директорию сайта:

sudo mkdir -p /var/www/site.ru  

Флаг -p создаёт все родительские директории, если они отсутствуют.

Скачайте последнюю версию WordPress во временный архив:

sudo wget https://wordpress.org/latest.tar.gz -O /tmp/wordpress.tar.gz  

Распакуйте его:

sudo tar -xzf /tmp/wordpress.tar.gz -C /var/www/site.ru --strip-components=1  

Здесь:

  • -xzf — распаковка gzip-архива;
  • -C /var/www/site.ru — целевая директория;
  • --strip-components=1 — игнорирует корневую папку wordpress в архиве.

Удалите временные файлы:

sudo rm /tmp/wordpress.tar.gz  

Назначьте пользователя www-data владельцем файлов WordPress:

sudo chown -R www-data:www-data /var/www/site.ru

Проверьте структуру файлов:

ls -l /var/www/site.ru  

Ключевые элементы в выводе:

wp-admin/          # админ-панель 
wp-includes/       # системные файлы 
wp-content/        # плагины/темы/загрузки 
index.php          # главный входной скрипт 
wp-config-sample.php     # шаблон конфигурации  

Альтернативный методы загрузки через Git (для разработчиков):

sudo apt install git -y 
sudo git clone https://github.com/WordPress/WordPress.git /var/www/site.ru  

Ещё один вариант — из SVN (официальное зеркало):

sudo apt install subversion -y 
sudo svn checkout https://develop.svn.wordpress.org/trunk/ /var/www/site.ru  

Заключение

Вы выполнили установку Nginx, MariaDB, PHP 8.3 с модулями и загрузку WordPress — и теперь система готова к настройке В следующей статье мы расскажем как:

  • создать виртуальный хост Nginx,
  • настроить базу данных для WordPress,
  • установить SSL через Let's Encrypt,
  • выполнить первичную конфигурацию wp-config.php.

Далее читайте продолжение о том, как настроить связку Nginx‑PHP‑FPM для обработки PHP‑запросов, создать отдельную базу данных для WordPress, подключить SSL‑сертификат и завершить установку через интерфейс админ‑панели.

Читайте в блоге:

Loading spinner
0 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

VPN на VPS-сервере

Узнайте, как создать собственный VPN на VPS-сервере для защиты ваших конфиденциальных данных!

Что будем искать? Например,VPS-сервер

Мы в социальных сетях