MAATRIX / Блог / WordPress Multisite на VPS: десятки сайтов под одной админкой

WordPress Multisite на VPS: десятки сайтов под одной админкой

WordPress Multisite на VPS: сеть сайтов на одном сервере
Блог MAATRIX · 2026-07-07

Multisite — режим WordPress, где из одной установки крутится сеть сайтов: у каждого свой домен или поддомен, но общее ядро, темы и плагины. Это экономит время на обновлениях и деньги на хостинге. Разберём, как включить сеть на VPS, настроить wildcard-поддомены, nginx и SSL.

Обсудить статью, задать вопрос или начать новую тему

Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.

Перейти в сообщество →

Когда нужен Multisite, а когда нет

Multisite оправдан, когда сайтов много и они однотипны: сеть блогов, филиалы компании, лендинги под регионы, клиентские сайты веб-студии. Обновили ядро и плагины один раз — обновились все. Один сервер, одна база (с префиксами таблиц на каждый сайт), одна панель.

Не стоит городить сеть ради двух непохожих проектов: их проще держать отдельными установками. Multisite добавляет ограничения — некоторые плагины несовместимы с сетевым режимом, а один тяжёлый сайт делит ресурсы с остальными.

Для сети из 5–20 небольших сайтов возьмите VPS с 2–4 ГБ RAM и обязательно NVMe: база растёт, и на медленном диске админка начинает тормозить. У MAATRIX на AMD EPYC + NVMe сеть из десятка сайтов спокойно живёт на среднем тарифе.

Нужен сервер под эту задачу?

Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США и РФ. Оплата картой РФ и по СБП.

Арендовать VPS для мультисайта

Базовый LEMP: nginx, PHP, MySQL

Ставим стек LEMP (Linux + nginx + MySQL + PHP-FPM):

sudo apt update
sudo apt install -y nginx mysql-server php-fpm php-mysql \
  php-curl php-gd php-mbstring php-xml php-zip unzip

Создаём базу и пользователя под сеть:

sudo mysql
CREATE DATABASE wpnet CHARACTER SET utf8mb4;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'СильныйПароль';
GRANT ALL ON wpnet.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Скачиваем и распаковываем WordPress в каталог сайта:

cd /var/www
sudo curl -O https://wordpress.org/latest.tar.gz
sudo tar -xzf latest.tar.gz
sudo chown -R www-data:www-data /var/www/wordpress

Включаем сеть в wp-config.php

Установите WordPress обычным образом (мастер на /wp-admin/install.php), затем откройте wp-config.php и над строкой «That's all, stop editing» добавьте:

define('WP_ALLOW_MULTISITE', true);

После этого в админке появится пункт «Инструменты → Установка сети». Выберите тип адресации — поддомены (site.example.com) или подкаталоги (example.com/site). Для сети разных проектов удобнее поддомены.

WordPress выдаст ещё один блок констант — впишите его в wp-config.php ровно как показано (значения подставит сам мастер):

define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', true);
define('DOMAIN_CURRENT_SITE', 'example.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

И добавит правила в .htaccess (для nginx их заменяет конфиг ниже). Перелогиньтесь — вверху появится меню «Мои сайты».

Wildcard-поддомены: DNS и nginx

Чтобы любой поддомен вида *.example.com вёл на сервер, добавьте в DNS wildcard-запись A на IP вашего VPS:

*.example.com.   A   203.0.113.10

В nginx укажите server_name с маской и стандартный обработчик WordPress:

server {
    listen 80;
    server_name example.com *.example.com;
    root /var/www/wordpress;
    index index.php;
    location / { try_files $uri $uri/ /index.php?$args; }
    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php-fpm.sock;
    }
}

Проверьте конфиг и перезапустите: sudo nginx -t && sudo systemctl reload nginx.

Wildcard SSL для всей сети

Обычный HTTP-выпуск сертификата не покроет поддомены — для *.example.com нужен wildcard-сертификат, а он выдаётся только через DNS-проверку. Если ваш DNS у поддерживаемого провайдера, используйте соответствующий плагин certbot; универсальный ручной способ:

sudo apt install -y certbot python3-certbot-nginx
sudo certbot certonly --manual --preferred-challenges dns \
  -d example.com -d '*.example.com'

Certbot попросит добавить TXT-запись _acme-challenge в DNS. После выпуска пропишите пути к сертификату в nginx и добавьте listen 443 ssl. Ключевой момент: без wildcard-сертификата новые сайты сети будут открываться с ошибкой безопасности.

Добавляем сайты и частые ошибки

Новый сайт добавляется в «Мои сайты → Управление сетью → Сайты → Добавить». Если DNS и SSL настроены как выше, поддомен заработает сразу.

  • Поддомены не открываются — забыли wildcard-запись A в DNS.
  • Ошибка сертификата на поддоменах — выпустили обычный SSL вместо wildcard.
  • «Инструменты → Установка сети» не появился — не добавили WP_ALLOW_MULTISITE или не перелогинились.
  • Плагин ломает сеть — активируйте его сетевым способом или только на нужном сайте.

Резервные копии для сети критичны вдвойне: одна база хранит все сайты. Ежедневные бэкапы VM у MAATRIX плюс собственный дамп базы — надёжная страховка.

Нужен сервер под эту задачу?

Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США и РФ. Оплата картой РФ и по СБП.

Арендовать VPS для мультисайта

Обсудить статью, задать вопрос или начать новую тему

Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.

Перейти в сообщество →

Частые вопросы

Поддомены или подкаталоги — что выбрать?

Поддомены (site.example.com) удобнее для независимых проектов и разных доменов через domain mapping. Подкаталоги проще в SSL, но выглядят как разделы одного сайта.

Сколько сайтов потянет один VPS?

Зависит от посещаемости. Сеть из 10–20 небольших сайтов комфортно живёт на 2–4 ГБ RAM с NVMe и кэшированием.

Нужен ли отдельный SSL на каждый сайт?

Нет, при поддоменах достаточно одного wildcard-сертификата на *.example.com. Для чужих доменов через mapping выпускается отдельный сертификат.