Назад к блогу
2 февраля 2026Руководства

Как разместить несколько сайтов на одном VPS сервере

Узнайте, как разместить несколько сайтов на одном VPS сервере с использованием виртуальных хостов. Полное руководство по управлению несколькими доменами, SSL сертификатами и распределению ресурсов.

Как разместить несколько сайтов на одном VPS сервере

Размещение нескольких сайтов на одном VPS сервере — это эффективный и экономичный способ управления несколькими проектами. Используя виртуальные хосты, вы можете обслуживать разные домены с одного сервера, каждый со своей конфигурацией, SSL сертификатом и корневой директорией. Это руководство покажет, как настроить и управлять несколькими сайтами на вашем VPS.

Преимущества размещения нескольких сайтов

  • Экономия средств: один сервер вместо нескольких хостинг-аккаунтов
  • Централизованное управление: все сайты в одном месте
  • Совместное использование ресурсов: эффективное использование ресурсов сервера
  • Легкое масштабирование: добавление сайтов без дополнительной инфраструктуры
  • Единые резервные копии: резервное копирование всех сайтов вместе
  • Лучший контроль: полный доступ к серверу для всех проектов

Настройка виртуальных хостов с Nginx

Создайте отдельные server блоки для каждого сайта:

bash
nano /etc/nginx/sites-available/example1.com

server {
    listen 80;
    server_name example1.com www.example1.com;
    root /var/www/example1.com;
    index index.html index.php;
    
    location / {
        try_files $uri $uri/ =404;
    }
}

ln -s /etc/nginx/sites-available/example1.com /etc/nginx/sites-enabled/
nginx -t
systemctl reload nginx

SSL сертификаты для нескольких доменов

Настройте SSL сертификаты для каждого домена с помощью Certbot:

bash
apt install -y certbot python3-certbot-nginx
certbot --nginx -d example1.com -d www.example1.com
certbot --nginx -d example2.com -d www.example2.com

# Сертификаты автоматически обновляются через cron:
certbot renew --dry-run

Управление ресурсами

Мониторьте и ограничивайте ресурсы для каждого сайта:

  • Используйте пулы PHP-FPM с разными лимитами ресурсов
  • Настройте отдельные базы данных MySQL для каждого сайта
  • Мониторьте использование диска: df -h
  • Отслеживайте использование памяти: htop или free -m
  • Настройте ротацию логов для предотвращения заполнения диска
  • Используйте инструменты мониторинга для отслеживания производительности каждого сайта

Изоляция сайтов

Убедитесь, что сайты не мешают друг другу:

  • Отдельные корневые директории: /var/www/site1, /var/www/site2
  • Разные пулы PHP-FPM с лимитами ресурсов
  • Отдельные пользователи и базы данных
  • Индивидуальные SSL сертификаты для каждого домена
  • Изолированные файлы логов для каждого сайта
  • Используйте chroot или контейнеры для максимальной изоляции (продвинутый уровень)

Мониторинг нескольких сайтов

  • Настройте мониторинг uptime для каждого домена
  • Регулярно мониторьте использование дискового пространства
  • Отслеживайте использование пропускной способности для каждого сайта
  • Настройте оповещения о высоком использовании ресурсов
  • Регулярные резервные копии всех сайтов
  • Мониторьте сроки действия SSL сертификатов