Перейти к содержимому
VDS · Сайты и веб-серверы

Несколько сайтов на одной машине

Как разместить десяток сайтов на одном VDS: раскладка каталогов, отдельные конфиги и пользователи, общий сертификат и оценка нагрузки по ступеням.

Обновлено 23 августа 2026 г.

Один публичный адрес IPv4 обслуживает сколько угодно доменов: веб-сервер разбирает запросы по заголовку Host. Ограничение не в адресах, а в памяти и диске вашей ступени.

Раскладка

Держите единый шаблон, иначе через полгода вы не найдёте, где чей сайт:

/var/www/example.ru/public
/var/www/example.ru/logs
/var/www/shop.ru/public
/var/www/shop.ru/logs

Конфиг — отдельный файл на сайт: /etc/nginx/sites-available/<домен>, включение через ссылку в sites-enabled. Отключить сайт тогда означает удалить одну ссылку и сделать reload, а не искать нужный кусок в общем файле.

Конфигурация

server {
    listen 80;
    server_name example.ru www.example.ru;
    root /var/www/example.ru/public;
    index index.html index.php;
    access_log /var/www/example.ru/logs/access.log;
}

Заведите ещё «сайт-заглушку» на неизвестные домены, иначе первый по алфавиту конфиг будет открываться на любой чужой домен, направленный на ваш адрес:

server {
    listen 80 default_server;
    server_name _;
    return 444;
}

Разделение прав

Если сайты разных клиентов или разных проектов, не давайте им общего пользователя: дыра в одном скрипте иначе означает доступ ко всем.

useradd -r -d /var/www/example.ru -s /usr/sbin/nologin site-example
chown -R site-example:www-data /var/www/example.ru
chmod 750 /var/www/example.ru

Для PHP заведите отдельный пул FPM на каждый сайт со своим user и listen — см. PHP-FPM. Базы тоже разделяйте: пользователи и права.

Сертификаты

Один запуск certbot покрывает сразу несколько доменов:

certbot --nginx -d example.ru -d www.example.ru -d shop.ru -d www.shop.ru

Продление общее, таймер один. Подробности — Let's Encrypt.

Сколько сайтов влезет

Считайте по памяти, а не по числу доменов. Статический сайт почти ничего не стоит, сайт на CMS с базой — сотни мегабайт.

СтупеньПамятьОриентир
VDS-1 (2 ГБ)2 ГБ1–2 сайта на CMS или десяток статических
VDS-2 (4 ГБ)4 ГБ3–5 сайтов на CMS
VDS-3 (8 ГБ)8 ГБ8–12 сайтов на CMS

Диск тоже конечен: 40 ГБ на VDS-1, 250 ГБ на VDS-6. Улучшение тарифа доступно только вверх, с доплатой за оставшиеся дни оплаченного срока.

Частые ошибки

СимптомПричина
Все домены показывают один сайтНе совпал server_name, сработал первый блок
Логи всех сайтов в одном файлеНе задан access_log в блоке сайта
Один сайт положил всеОбщий пул PHP-FPM без лимитов
Кончилось местоЛоги и бэкапы на том же диске — настройте logrotate

Перед добавлением очередного сайта посмотрите графики памяти в «Обзоре» панели /hosting/vds/m/<id> за неделю. Если пик уже под потолком, новый сайт станет причиной падений, а не следствием.