Назад к блогу
23 мая 2026Руководства

Как перенести сайт на новый VPS

Перенос сайта: резервное копирование файлов и базы данных, загрузка на VPS Hiddence, смена DNS и проверка работы.

Как перенести сайт на новый VPS

Перенос сайта на новый VPS — с обычного хостинга или старого сервера — требует копирования файлов, базы данных и обновления DNS. Ниже пошаговый список, чтобы сократить простой на Hiddence.

Подготовка

  • Новый VPS с той же или новее версией ОС/PHP/MySQL
  • Установленный веб-стек (Nginx/Apache, PHP, MySQL)
  • Снизьте TTL DNS до 300 за день до переноса
  • Полная резервная копия старого сервера
  • Предупредите пользователей о возможном окне обслуживания

Шаг 1: Резервная копия файлов сайта

На старом сервере создайте архив каталога:

bash
cd /var/www
tar -czvf website-backup.tar.gz yoursite/

# Скачать на компьютер:
scp user@old-server:/var/www/website-backup.tar.gz .

Шаг 2: Загрузка на новый VPS

Скопируйте архив на Hiddence и распакуйте:

bash
scp website-backup.tar.gz root@NEW_VPS_IP:/var/www/
ssh root@NEW_VPS_IP
cd /var/www
tar -xzvf website-backup.tar.gz
chown -R www-data:www-data yoursite/

Шаг 3: Перенос базы MySQL

Экспорт на старом сервере, импорт на новом:

bash
# На старом сервере:
mysqldump -u root -p database_name > db.sql

# На новом VPS:
scp db.sql root@NEW_VPS_IP:/tmp/
mysql -u root -p -e "CREATE DATABASE database_name;"
mysql -u root -p database_name < /tmp/db.sql

# Обновите wp-config.php или .env при смене паролей

Шаг 4: Переключение DNS

Когда сайт работает на новом IP (проверка через /etc/hosts), обновите A-запись. Проверьте:

  • Сайт открывается без ошибок
  • SSL-сертификат валиден (перевыпустите Certbot при необходимости)
  • Формы и авторизация работают
  • Задачи по расписанию (cron) и отправка почты работают
  • Оставьте старый сервер на 24–48 часов как запасной

Советы по миграции

  • Для больших сайтов удобна синхронизация rsync (команда в статье выше)
  • Проверьте совместимость версии PHP
  • Проверьте сайт до смены DNS: добавьте строку с новым IP в /etc/hosts на своём компьютере
  • После переноса очистите кэш Redis
  • В WordPress при смене домена замените URL в базе данных (плагин или WP-CLI)