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

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

Блог MAATRIX · 2026-07-07

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

Когда нужен 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\nsudo apt install -y nginx mysql-server php-fpm php-mysql \\\n  php-curl php-gd php-mbstring php-xml php-zip unzip
', 'Создаём базу и пользователя под сеть:', "
sudo mysql\nCREATE DATABASE wpnet CHARACTER SET utf8mb4;\nCREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'СильныйПароль';\nGRANT ALL ON wpnet.* TO 'wpuser'@'localhost';\nFLUSH PRIVILEGES;\nEXIT;
", 'Скачиваем и распаковываем WordPress в каталог сайта:', '
cd /var/www\nsudo curl -O https://wordpress.org/latest.tar.gz\nsudo tar -xzf latest.tar.gz\nsudo 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);\ndefine('SUBDOMAIN_INSTALL', true);\ndefine('DOMAIN_CURRENT_SITE', 'example.com');\ndefine('PATH_CURRENT_SITE', '/');\ndefine('SITE_ID_CURRENT_SITE', 1);\ndefine('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 {\n    listen 80;\n    server_name example.com *.example.com;\n    root /var/www/wordpress;\n    index index.php;\n    location / { try_files $uri $uri/ /index.php?$args; }\n    location ~ \\.php$ {\n        include snippets/fastcgi-php.conf;\n        fastcgi_pass unix:/run/php/php-fpm.sock;\n    }\n}
', 'Проверьте конфиг и перезапустите: sudo nginx -t && sudo systemctl reload nginx.']

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

['Обычный HTTP-выпуск сертификата не покроет поддомены — для *.example.com нужен wildcard-сертификат, а он выдаётся только через DNS-проверку. Если ваш DNS у поддерживаемого провайдера, используйте соответствующий плагин certbot; универсальный ручной способ:', "
sudo apt install -y certbot python3-certbot-nginx\nsudo certbot certonly --manual --preferred-challenges dns \\\n  -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 для мультисайта

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

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

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

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

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

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

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