🔀
Хостинг

Переезд с cPanel на ISPmanager: файлы, базы, почта и DNS

14.11.2026
← Все статьи

cPanel и ISPmanager решают одну задачу — управление хостингом, но устроены по-разному: у них своя структура папок, свои правила именования баз и свой способ хранить настройки PHP. Поэтому рассчитывать на перенос «одной кнопкой» при переходе с cPanel на ISPmanager не стоит. Хорошая новость в том, что для обычного сайта это работа на час-два, и если идти по шагам, посетители даже не заметят переезда.

Главные различия между панелями

В cPanel файлы сайта обычно лежат в /home/пользователь/public_html, а дополнительные домены — во вложенных или соседних папках. ISPmanager создаёт для каждого домена отдельный каталог вида /var/www/пользователь/data/www/misol.uz. Эта разница чаще всего проявляется через жёстко прописанные пути в конфигурации: если папка кэша, лог или каталог загрузок указывают на старый путь, сайт начинает выдавать ошибки.

Отличаются и имена баз. cPanel автоматически добавляет к имени базы и пользователя префикс аккаунта, например klinika_wp. В ISPmanager имя задаёте вы сами, поэтому его нужно аккуратно перенести в конфигурацию. Настройки PHP тоже управляются иначе: в cPanel обычно используют MultiPHP INI Editor, а в ISPmanager версия и параметры PHP выбираются в настройках домена.

Пример: сайт частной клиники в Самарканде

Допустим, у частной клиники в Самарканде на cPanel работают сайт на WordPress, небольшой PHP-скрипт онлайн-записи, три почтовых ящика и ночная cron-задача, рассылающая SMS-напоминания. Домен misol.uz, ящики info@, qabul@ и direktor@. Составить такой список до начала переезда очень важно: именно забытая cron-задача или почтовый ящик потом доставляют больше всего хлопот.

Шаг 1: забираем данные из cPanel

В разделе «Backup» cPanel можно скачать полный архив домашней папки и отдельные дампы баз. При наличии SSH быстрее и надёжнее сделать это в терминале:

cd ~
tar -czf sayt-fayllar.tar.gz -C public_html .
mysqldump --single-transaction --default-character-set=utf8mb4 \
  -u klinika_wp -p klinika_wp > klinika_wp.sql

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

Отдельно перепишите все задания из раздела «Cron Jobs» и список ящиков из «Email Accounts». Пароли от почты cPanel не показывает, поэтому на новом сервере для ящиков придётся задать новые пароли и сообщить их сотрудникам.

Шаг 2: готовим окружение в ISPmanager

В ISPmanager сначала добавьте домен misol.uz в разделе WWW-доменов и выберите ту же версию PHP, что была на старом сервере: при расхождении версий старый плагин или скрипт может перестать работать. Затем создайте базу и пользователя в разделе баз данных, а в разделах почтовых доменов и ящиков откройте ящики с теми же именами.

Клиенты sayt.uz входят в ISPmanager прямо со страницы хостинга в личном кабинете, без отдельного пароля.

Шаг 3: загружаем файлы и базу

Архив можно загрузить в папку домена через файловый менеджер панели и распаковать там же. При наличии SSH удобнее работать из терминала:

cd /var/www/foydalanuvchi/data/www/misol.uz
tar -xzf ~/sayt-fayllar.tar.gz
mysql -u klinika -p klinika_db < ~/klinika_wp.sql

Импорт больших баз через phpMyAdmin иногда упирается в лимит размера загрузки или времени выполнения. В таком случае лучше загрузить сжатый дамп и импортировать его из терминала либо обратиться в поддержку.

Шаг 4: адаптируем конфигурацию

Когда файлы на месте, обновите параметры подключения к базе. Для WordPress это wp-config.php, для других скриптов обычно config.php или .env:

define('DB_NAME', 'klinika_db');
define('DB_USER', 'klinika');
define('DB_PASSWORD', 'yangi-kuchli-parol');
define('DB_HOST', 'localhost');

Затем найдите старые пути. Эта команда покажет прописанные в PHP-файлах пути, начинающиеся с /home/:

grep -rn "/home/klinika" --include=*.php .

Ещё одно важное место — .htaccess. Директивы php_value и php_flag работают, когда PHP подключён как модуль Apache, но в режиме CGI или FPM они могут вызвать ошибку 500. Уберите такие строки и задайте нужные значения в настройках PHP панели. Строки вида AddHandler application/x-httpd-ea-php, которые добавляет cPanel, на новом сервере не нужны — их следует удалить.

Шаг 5: cron и почта

Создайте cron-задачи заново в планировщике ISPmanager и не забудьте поправить пути, иначе задача будет молча падать. Если скрипт напоминаний клиники раньше вызывался как /home/klinika/public_html/cron/remind.php, теперь путь должен указывать в папку домена.

Для переноса старых писем удобен imapsync: он копирует письма по IMAP между серверами вместе со структурой папок. Если писем немного, а сотрудники работают в почтовой программе, иногда достаточно сохранить архив локально.

Шаг 6: проверка и переключение DNS

Перед сменой DNS проверьте сайт на новом сервере. Для этого временно пропишите IP нового сервера в файле hosts на своём компьютере:

203.0.113.10  misol.uz www.misol.uz

Так сайт с нового сервера увидит только ваш компьютер, остальные посетители продолжат работать со старым. Если всё в порядке, смените в кабинете DNS-записи домена или NS-серверы. Уменьшите TTL записей за сутки до переключения, и изменения разойдутся быстрее. SSL-сертификат на новом сервере можно выпустить только после того, как DNS начнёт указывать на новый IP: Let's Encrypt проверяет, что домен действительно обслуживается этим сервером.

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

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

🛠️ Сайт сломался после обновления PHP: быстрое восстановление 🐍 Как разместить бота на aiogram на сервере: virtualenv, systemd и webhook 🖥️ Терминал в панели быстро отключается: причины и правильное SSH-подключение 🔍 Как найти большие файлы, которые занимают место на хостинге: команды и приёмы
🌐 Язык
🇺🇿 O'zbek 🇺🇿 Ўзбек 🇷🇺 Русский ✓ 🇬🇧 English