Блог / Статьи

Полезная информация для вашего хостинга

Переход с shared-хостинга на VPS

Переход с shared-хостинга на VPS: пошаговое руководство для владельцев сайтов

Содержание

Shared-хостинг — отличная отправная точка для личного блога или визитки. Но как только проект начинает расти, появляются первые признаки «удушья»: медленная загрузка, нестабильность, невозможность установить нужное ПО. В этот момент многие задумываются: а не пора ли перейти на VPS?

В 2026 году виртуальные серверы стали доступны даже для новичков: цены начинаются от 99 рублей в месяц, а панели управления и скрипты автоматизации значительно упрощают настройку. Однако без чёткого плана миграция может обернуться потерей данных, простоем сайта и стрессом. В этой статье — подробный, пошаговый гид по переходу с shared-хостинга на VPS, основанный на реальных кейсах системных администраторов и веб-мастеров.

Признаки, что ваш shared-хостинг больше не справляется

Многие владельцы сайтов игнорируют тревожные сигналы, надеясь, что «само пройдёт». Но есть объективные показатели, которые говорят: пора менять инфраструктуру.

  • Сайт грузится дольше 3 секунд — особенно в часы пик. Это влияет не только на UX, но и на позиции в Google (Core Web Vitals);
  • Частые ошибки 503/504 — сервер перегружен из-за соседей по хостингу;
  • Ограничения на ресурсы: «Вы превысили лимит CPU» — стандартное сообщение у большинства shared-провайдеров;
  • Нельзя обновить PHP — вы застряли на версии 7.4, хотя WordPress требует 8.0+;
  • Отсутствие SSH-доступа — невозможно выполнить composer install, настроить cron или запустить миграции БД;
  • Нет возможности установить кэширующие решения (Redis, Memcached, OPcache).

Если вы столкнулись с двумя и более из этих пунктов — VPS не просто желателен, а необходим.

Выбор операционной системы: Ubuntu Server против Alpine Linux

После аренды VPS первое решение — выбор ОС. Для большинства пользователей оптимальный выбор — Ubuntu Server LTS (Long-Term Support). Почему?

  • Огромное сообщество и документация;
  • Стабильные репозитории с актуальными версиями PHP, Nginx, MySQL;
  • li>Поддержка до 5 лет (например, Ubuntu 22.04 LTS — до 2027 года);
  • Простота установки и настройки.

Alpine Linux — минималистичная ОС на базе musl libc. Она весит менее 10 МБ и идеальна для контейнеров, но для новичка может стать головной болью: не все пакеты совместимы, а отладка сложнее.

Рекомендация: начинайте с Ubuntu 22.04 или 24.04 LTS. Это «золотая середина» между стабильностью и современностью.

vps01

Базовая безопасность: первые шаги после подключения к серверу

Как только вы получили IP-адрес и root-доступ, первым делом нужно защитить сервер. Большинство взломов происходят из-за элементарной халатности.

1. Создание нового пользователя

Никогда не работайте под root! Создайте обычного пользователя:

adduser webmaster
usermod -aG sudo webmaster

2. Отключение входа по паролю

Используйте только SSH-ключи. Сгенерируйте ключ на своём компьютере:

ssh-keygen -t ed25519 -C "Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript."

Затем скопируйте публичный ключ на сервер:

ssh-copy-id webmaster@ваш_IP

После этого отредактируйте /etc/ssh/sshd_config:

PasswordAuthentication no
PermitRootLogin no

И перезапустите SSH:

sudo systemctl restart sshd

3. Установка и настройка fail2ban

Этот инструмент блокирует IP-адреса после нескольких неудачных попыток входа:

sudo apt install fail2ban
sudo systemctl enable fail2ban
sudo systemctl start fail2ban

По умолчанию он уже защищает SSH. Для веб-сервисов можно создать кастомные фильтры.

4. Настройка брандмауэра (UFW)

Разрешите только необходимые порты:

sudo ufw allow OpenSSH
sudo ufw allow 'Nginx Full'
sudo ufw enable

Теперь сервер закрыт от всех, кроме HTTP/HTTPS и SSH.

Настройка веб-стека без панели управления: Nginx + PHP-FPM + MariaDB

Без ISPmanager или cPanel всё равно можно собрать мощный и быстрый стек. Вот как это делается в 2026 году.

Установка Nginx

sudo apt update
sudo apt install nginx

Установка PHP 8.2 с расширениями

sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php8.2-fpm php8.2-mysql php8.2-curl php8.2-gd php8.2-mbstring php8.2-xml php8.2-zip

Установка MariaDB (альтернатива MySQL)

sudo apt install mariadb-server
sudo mysql_secure_installation

Создание виртуального хоста

Создайте файл /etc/nginx/sites-available/mysite.conf:

server {
    listen 80;
    server_name example.com www.example.com;
    root /var/www/mysite;
    index index.php;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.2-fpm.sock;
    }
}

Активируйте сайт:

sudo ln -s /etc/nginx/sites-available/mysite.conf /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx

vps02

Миграция сайта: как перенести данные без потерь

Этот этап требует особой внимательности. Рекомендуется выполнять миграцию в off-peak часы.

1. Резервное копирование на старом хостинге

Скачайте архив файлов и дамп базы данных. Если есть доступ к phpMyAdmin — экспортируйте SQL. Если нет — используйте консоль (если доступна):

mysqldump -u username -p dbname > backup.sql

2. Перенос файлов на VPS

scp -r /local/site/* webmaster@ваш_IP:/var/www/mysite/

3. Импорт базы данных

mysql -u root -p
CREATE DATABASE mysite;
GRANT ALL PRIVILEGES ON mysite.* TO 'wpuser'@'localhost' IDENTIFIED BY 'strong_password';
EXIT;
mysql -u wpuser -p mysite < backup.sql

4. Обновление конфигурации сайта

В WordPress — отредактируйте wp-config.php, укажите новые данные БД. Также проверьте siteurl и home в таблице wp_options.

Мониторинг через Netdata и Telegram-бота

На VPS вы теперь ответственны за всё. Чтобы не пропустить сбой, настройте мониторинг.

Установка Netdata

bash <(curl -Ss https://my-netdata.io/kickstart.sh)

После установки откройте http://ваш_IP:19999 — вы увидите живую панель с CPU, RAM, дисковой нагрузкой, сетью.

Telegram-уведомления о перегрузке

Создайте бота через @BotFather, получите токен. Затем напишите простой скрипт /opt/monitor.sh:

#!/bin/bash
CPU=$(top -bn1 | grep "Cpu(s)" | awk '{print 100 - $8}')
if (( $(echo "$CPU > 90" | bc -l) )); then
  curl -s -X POST https://api.telegram.org/botВАШ_ТОКЕН/sendMessage \
    -d chat_id=ВАШ_CHAT_ID \
    -d text="⚠️ Высокая загрузка CPU: $CPU%"
fi

Добавьте в cron:

*/5 * * * * /opt/monitor.sh

Результаты перехода: скорость, стоимость и контроль

После полной миграции владельцы сайтов наблюдают следующие изменения:

  • Скорость загрузки увеличивается на 40–70% — за счёт отсутствия «соседей» и возможности настроить кэширование;
  • Стоимость снижается — shared-хостинг «премиум» класса стоит 500–1000 ₽/мес, тогда как VPS с 2 ГБ RAM — от 199 ₽/мес (например, у Beget, Timeweb, Fornex);
  • Полный контроль — можно установить Redis, настроить Cron, обновить SSL-сертификат вручную, использовать Composer;
  • Гибкость масштабирования — при росте трафика достаточно увеличить RAM/CPU, не перенося сайт.

Когда всё же стоит остаться на shared-хостинге

VPS — не панацея. Если у вас:

  • Один простой сайт-визитка;
  • Нет времени или желания разбираться с сервером;
  • Нет технического бэкапа (друга-админа, фрилансера);

— то shared-хостинг с хорошей поддержкой (например, Beget или FirstVDS) может быть разумным выбором.

vps03

Заключение: VPS — это свобода, но с ответственностью

Переход с shared-хостинга на VPS — это не просто смена тарифа. Это переход на новый уровень владения своим проектом. Да, потребуется время на настройку. Но результат — стабильность, скорость, безопасность и независимость — того стоит.

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