Skip to content
VDS · Сайти та вебсервери

Кілька сайтів на одному сервері

Як розмістити десяток сайтів на одному VPS: структура каталогів, окремі конфігурації та користувачі, спільний сертифікат і оцінка навантаження за тарифом.

Оновлено 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/<domain>, увімкнений через симлінк у sites-enabled. Тоді вимкнення сайту означає видалення одного симлінка й перезавантаження, а не пошук потрібного фрагмента у спільному файлі.

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

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 GB)2 GB1–2 сайти на CMS або десяток статичних
VDS-2 (4 GB)4 GB3–5 сайтів на CMS
VDS-3 (8 GB)8 GB8–12 сайтів на CMS

Диск теж не безмежний: 40 GB на VDS-1, 250 GB на VDS-6. Ви можете лише підвищити тариф, доплативши різницю за решту днів оплаченого періоду.

Типові помилки

СимптомПричина
Усі домени показують той самий сайтserver_name не збігся, тож запит обробив перший блок
Логи всіх сайтів в одному файліaccess_log не задано в блоці сайту
Один сайт поклав усеСпільний пул PHP-FPM без обмежень
Забракло місця на дискуЛоги й бекапи на одному диску — налаштуйте logrotate

Перш ніж додавати ще один сайт, перегляньте графіки пам'яті за минулий тиждень у «Огляді» панелі за адресою /hosting/vds/m/<id>. Якщо пік уже сягає стелі, новий сайт стане причиною збоїв, а не наслідком.