📦
Хостинг

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

14.11.2026
← Все статьи

На первый взгляд перенос сайта с одного хостинга на другой выглядит просто: скопировать файлы, импортировать базу и направить домен на новый сервер. На практике больше всего проблем возникает из-за мелочей: забытой cron-задачи, другой версии PHP, почтовых ящиков, оставшихся на старом сервере, или заказов, потерянных, пока изменения DNS расходились по сети. Порядок ниже помогает выполнить переезд пошагово, не останавливая работающий сайт и сохраняя возможность вернуться назад.

1. Составьте список того, что есть на старом хостинге

Прежде чем начинать, запишите всё, что есть на старом хостинге. Переносить нужно не только файлы и базу, но и окружающие их настройки, иначе сайт на новом сервере откроется, но часть функций молча перестанет работать. Список ниже обычно покрывает все случаи:

Особенно важно полностью скопировать DNS-записи. Если забыть TXT-записи, добавленные для Google Search Console или почтовых сервисов, после переезда может сломаться подтверждение сайта или доставка писем.

2. Заранее уменьшите TTL

TTL DNS-записи определяет, сколько времени другие серверы держат её в кеше. Если TTL равен суткам, после смены IP часть пользователей ещё долго будет попадать на старый сервер. Поэтому как минимум за день-два до переезда снизьте TTL записи A до 300 секунд. Если домен обслуживается в кабинете sayt.uz, DNS-записи и их TTL управляются там, в разделе DNS домена.

dig +noall +answer example.uz A
# example.uz.   300   IN   A   203.0.113.20

3. Перенесите файлы

Если на обоих серверах есть SSH, быстрее и надёжнее всего использовать rsync или архив. При повторном запуске rsync передаёт только изменённые файлы, поэтому удобно запустить его один раз заранее и ещё раз прямо перед сменой DNS. Если SSH нет, архив можно создать в файловом менеджере старой панели и загрузить в новую.

# архив на старом сервере
tar -czf site.tar.gz -C ~/www example.uz

# или напрямую на новый сервер
rsync -avz --progress ~/www/example.uz/ user@203.0.113.20:~/www/example.uz/

4. Перенесите базу данных

При экспорте через mysqldump важно явно указать кодировку, чтобы не испортить узбекские и русские тексты. Параметр --single-transaction сохраняет таблицы InnoDB в состоянии на один момент времени без остановки сайта. На новом сервере создаются пустая база и пользователь, затем импортируется дамп. Большие базы через phpMyAdmin могут упереться в ограничения по времени или размеру, поэтому по возможности используйте консоль.

mysqldump --single-transaction --default-character-set=utf8mb4 \
  -u eski_user -p eski_baza > baza.sql

mysql --default-character-set=utf8mb4 -u yangi_user -p yangi_baza < baza.sql

После импорта обновите имя базы, пользователя и пароль в конфигурации сайта: в WordPress это wp-config.php, в Laravel — .env. Если домен не меняется, заменять адреса в базе не нужно.

5. Проверьте сайт до смены DNS

Самый полезный шаг переезда — проверить сайт на новом сервере, пока домен ещё указывает на старый. Для этого в файл hosts на своём компьютере добавьте домен и IP нового сервера. Тогда на новый сервер будет заходить только ваш браузер, а все остальные посетители продолжат работать со старым сайтом.

# Windows: C:\Windows\System32\drivers\etc\hosts
# Linux/macOS: /etc/hosts
203.0.113.20   example.uz www.example.uz

В таком режиме проверьте основные страницы, вход в админку, поиск, формы и загрузку изображений. Браузер может предупреждать об HTTPS, потому что сертификат ещё не выпущен, — это нормально. После проверки не забудьте удалить строку из hosts.

6. Заморозьте контент и смените DNS

Если на сайте есть заказы, комментарии или регистрации, данные, записанные в старую базу во время переключения, не попадут в новую. Поэтому выберите время с минимальной нагрузкой, ненадолго переведите старый сайт в режим технических работ, в последний раз выполните экспорт-импорт базы и ещё раз запустите rsync. После этого смените запись A на новый IP или, если новый хостинг предоставляет свои NS-серверы, замените NS домена. При смене NS все старые записи, особенно MX и TXT, должны быть заранее подготовлены в новой DNS-зоне.

7. Почта и SSL

Почту чаще всего упускают из виду. Если письма переезжают вместе с хостингом, на новом сервере заранее создаются ящики с теми же именами, а старые письма переносятся по IMAP инструментом вроде imapsync. Даже после смены MX письма ещё несколько часов могут приходить на старый сервер, поэтому перенос полезно повторить. SSL-сертификат выпускается после того, как домен начал указывать на новый сервер: Let's Encrypt проверяет, что домен действительно направлен туда.

imapsync --host1 mail.eski-hosting.example --user1 info@example.uz --password1 '***' \
         --host2 mail.example.uz --user2 info@example.uz --password2 '***'

Пример: мебельный магазин в Фергане

Сайт ферганского мебельного магазина на WordPress и WooCommerce переносили с медленного зарубежного хостинга на сервер в Узбекистане. Разработчик сначала снизил TTL до 300 секунд, в пятницу перенёс файлы и базу и через файл hosts проверил каталог, корзину и страницу оплаты. В воскресенье утром он на полчаса перевёл магазин в режим технических работ, в последний раз перенёс базу и сменил запись A. Старый хостинг продержали ещё неделю, и за это время пришедшие туда последние письма тоже перенесли в новые ящики.

Проверка после переезда

Похожие статьи

💾 Снапшот VPS и резервная копия: в чём разница и что вас спасёт 🔄 Обновление сайта через git pull: простой и надёжный деплой на хостинге 🔀 Отдельная версия PHP для каждого сайта: настройка в ISPmanager 🖥️ Выбор хостинга в Узбекистане в 2026 году: местный или зарубежный сервер
🌐 Язык
🇺🇿 O'zbek 🇺🇿 Ўзбек 🇷🇺 Русский ✓ 🇬🇧 English