Перенесення сайту на інший хостинг потребує не лише копіювання файлів. Важливо правильно перенести базу даних, налаштувати домен, перевірити роботу пошти, форм, платіжних модулів і зовнішніх інтеграцій. Якщо виконати всі дії послідовно, можна зменшити період недоступності сайту до мінімуму. Водночас повністю виключити ризики без діагностики та підготовки неможливо.
Перед початком робіт варто визначити, які дані змінюються найчастіше. Для інформаційного сайту це можуть бути коментарі та заявки, а для інтернет-магазину — замовлення, залишки товарів і дані клієнтів. Саме ці зміни потрібно буде синхронізувати безпосередньо перед перемиканням домену.
Підготовка копії сайту
Спочатку створіть повну резервну копію сайту на поточному хостингу. До неї мають входити файли сайту, база даних, конфігураційні файли та, за потреби, поштові скриньки. Для WordPress особливо важливо зберегти каталог wp-content, файл wp-config.php і дамп бази даних.
Резервну копію потрібно зберігати не лише на сервері, з якого переноситься сайт. Завантажте її на локальний комп’ютер або інше надійне сховище та перевірте, чи відкривається архів і чи не пошкоджений файл бази даних. Не видаляйте старий сайт одразу після перенесення: він може знадобитися для порівняння або повторного відновлення.
- зафіксуйте версії PHP, MySQL або MariaDB та активних розширень;
- запишіть поточні налаштування DNS і поштових записів;
- перевірте, де зберігаються SSL-сертифікати та ключі доступу;
- переконайтеся, що маєте доступ до панелі хостингу, FTP або SSH і бази даних;
- зробіть окрему копію бази перед будь-якими операціями імпорту.
Під час перенесення не варто змінювати структуру сайту, оновлювати CMS і встановлювати нові плагіни одночасно. Якщо після цього з’явиться помилка, буде складно визначити її причину.
Якщо потрібна допомога з підготовкою або перевіркою резервних копій, корисно заздалегідь ознайомитися з послугою Перенесення сайту на новий хостинг без втрати даних.
Тестування на новому сервері
Після створення облікового запису на новому хостингу перенесіть файли та імпортуйте базу даних. Для великих баз імпорт через веб-інтерфейс може завершитися помилкою через обмеження часу або розміру файлу. У такому разі використовують імпорт частинами або інструменти командного рядка, якщо хостинг надає SSH-доступ.
Новий сервер потрібно налаштувати до зміни DNS. Перевірити сайт можна через тимчасовий домен, технічну адресу хостингу або локальний файл hosts. Останній спосіб дає змогу відкрити сайт на новому сервері лише з вашого комп’ютера, не змінюючи доступ для інших відвідувачів.
Під час тестування перевірте:
- головну сторінку, внутрішні розділи та сторінки з різними шаблонами;
- вхід до адміністративної панелі;
- форми зворотного зв’язку, заявки та надсилання листів;
- пошук, фільтри, кошик і оформлення замовлення, якщо це інтернет-магазин;
- завантаження зображень і файлів;
- роботу HTTPS, перенаправлень і канонічних адрес;
- права доступу до файлів і підключення до бази даних;
- інтеграції з платіжними системами, CRM, аналітикою та службами доставки.
Типові проблеми після копіювання — помилка підключення до бази даних, неправильні шляхи до файлів, відсутні PHP-розширення, помилки прав доступу або некоректна робота кешу. У WordPress додатково перевірте адресу сайту в налаштуваннях, постійні посилання та сумісність версії PHP з темою і плагінами.
Синхронізація останніх змін
Між першим копіюванням і перемиканням DNS на сайті можуть з’явитися нові заявки, замовлення, коментарі або файли. Якщо просто повторити перенесення всієї бази, можна перезаписати актуальні дані на новому сервері. Тому перед фінальним перемиканням потрібно визначити період мінімальної активності та спланувати синхронізацію.
Для невеликого сайту зазвичай достатньо тимчасово обмежити внесення змін, повторно експортувати базу даних і перенести файли, які були змінені. Для магазину або проєкту з постійним потоком замовлень безпечніше встановити короткий режим технічних робіт або окремо перенести нові записи за час після першої копії.
- Зафіксуйте час початку фінальної синхронізації.
- Створіть свіжу резервну копію бази даних на старому сервері.
- Перенесіть змінені файли та актуальну базу на новий хостинг.
- Перевірте кількість замовлень, заявок і користувачів на обох серверах.
- Переконайтеся, що після імпорту сайт не використовує старі реквізити підключення.
Не видаляйте та не очищайте стару базу даних до завершення перевірок. Якщо під час синхронізації виникне конфлікт або пошкодження даних, відновлення з резервної копії може бути єдиним способом повернути попередній стан.
Перемикання DNS
Коли сайт протестований на новому сервері, змініть DNS-записи домену. Найчастіше оновлюють запис A, який вказує домен на IP-адресу нового хостингу. Якщо використовується www, перевірте також відповідний запис A або CNAME.
За кілька годин або днів до перенесення можна зменшити TTL DNS-записів. Це не гарантує миттєвого оновлення для всіх користувачів, оскільки провайдери та локальні системи можуть зберігати старі дані довше. Після зміни DNS частина відвідувачів ще певний час потраплятиме на старий сервер, а частина — вже на новий.
На етапі перемикання важливо не вимикати старий хостинг. Він має продовжувати обслуговувати запити, поки DNS-зміни поширюються. Якщо сайт приймає заявки або замовлення, потрібно врахувати, що дані можуть надходити на обидва сервери. У такій ситуації перевіряйте обидві бази та поштові скриньки, щоб не пропустити звернення клієнтів.
Окремо перевірте DNS-записи для пошти: MX, SPF, DKIM і DMARC. Неправильне їх перенесення може призвести до того, що сайт працюватиме, але листи не надходитимуть або потраплятимуть у спам.
Контроль після запуску
Після зміни DNS перевіряйте сайт із різних мереж і пристроїв. Переконайтеся, що домен відкривається через HTTPS, сертифікат дійсний, а перенаправлення з HTTP на HTTPS та з неосновної версії домену працюють коректно.
- перегляньте журнали помилок вебсерверу та PHP;
- перевірте надходження тестових заявок і листів;
- зробіть тестове оформлення замовлення без фактичного списання коштів;
- перевірте швидкість завантаження та роботу кешування;
- переконайтеся, що індексація, файл
robots.txtі карта сайту не змінилися випадково; - перевірте завдання cron, автоматичні резервні копії та оновлення;
- проаналізуйте доступи до панелі хостингу, FTP, SSH і бази даних.
Старий сервер бажано залишити доступним на перехідний період, доки не буде зрозуміло, що DNS оновився у більшості мереж і всі дані успішно надходять на новий хостинг. Точна тривалість такого періоду залежить від DNS-кешування, налаштувань домену та особливостей сайту.
Звернутися до спеціаліста варто, якщо сайт містить велику базу даних, приймає постійні замовлення, використовує нестандартні серверні налаштування або після перенесення з’явилися помилки 500, проблеми з авторизацією, втрата зображень чи порушення роботи пошти. У таких випадках необережне повторне копіювання або масова зміна налаштувань може призвести до втрати актуальних даних, тому спочатку потрібно зафіксувати поточний стан і створити резервну копію.
Якщо після зміни сервера сайт не відкривається, втратив частину даних або працює нестабільно, може знадобитися відновлення сайтів після перенесення на новий хостинг. У такій ситуації варто спочатку зберегти поточні файли й базу даних, а вже потім перевіряти конфігурацію, DNS та сумісність серверного середовища.