N1 Nex1on

Копії та перенесення сайту на Nex1on: як не втратити дані й переїхати без втрат

Копія бази, повернення, копія на сторону, переїзд на інший хостинг чи на іншу адресу, перенесення вмісту із сайту на сайт: за кроками й зі страховками рушія.

Сайт тримається на трьох речах: базі даних, завантажених файлах і самому рушії. Рушій завжди можна взяти з архіву наново, а ось записи, користувачі й налаштування живуть лише в базі, картинки та документи — лише в теці завантажень. Нижче — як зробити копію, як повернути сайт, якщо щось пішло не так, як переїхати на інший хостинг чи на іншу адресу і як перенести вміст із сайту на сайт.

Що де зберігається #

  • База даних: записи, сторінки, товари, користувачі, налаштування. Її зберігає «Копія бази». Файлів сайту в копії немає.
  • Тека uploads: завантажені картинки, відео, документи. До копії бази вона не входить, її переносять через FTP.
  • Рушій: файли з архіву. Ключ сайту й доступ до бази лежать у теці config.
Копія на тому самому сервері, що й сайт, страхує від власної помилки, а не від втрати сервера: якщо зникне хостинг, зникне й вона. Тому нижче є й копія на сторону.

Крок 1. Зробіть копію бази #

Відкрийте «Система → Копії та перенесення → Копії бази» і натисніть «Зробити копію». Файл з'явиться в списку «Готові копії»; його можна звантажити й видалити. Лежить він поза публічною текою, звантажити копію може лише той, хто увійшов у панель.
Сторінка «Копії бази»: готова копія, звантажити й видалити
Сторінка «Копії бази»: готова копія, звантажити й видалити

Не чекайте біди, щоб робити копії. Розкрийте блок «Як часто робити копії й скільки зберігати»: там можна задати, щоб копія робилася сама раз на кілька днів (нуль — не робити), і ввімкнути стискання gzip: файл стане в кілька разів меншим, а повернення прочитає його як звичайно.

Крок 2. Поверніть базу з копії #

Унизу тієї самої сторінки — блок «Повернути базу з копії». Виберіть копію, наберіть її назву руками для підтвердження й натисніть «Повернути базу».
Блок «Повернути базу з копії»: вибір копії й підтвердження назвою файлу
Блок «Повернути базу з копії»: вибір копії й підтвердження назвою файлу

Повернення замінює все, що є зараз, на те, що було в копії: записи, замовлення й налаштування, які з'явилися після неї, зникнуть. Але без запасного шляху ви не лишитеся:

  • перед поверненням рушій сам знімає копію поточної бази й називає її файл;
  • якщо повернення урвалося, угорі сторінки з'являється «Повернення бази розпочато й не завершено» і кнопка «Повернути стан до спроби»;
  • копія, в якій немає частини таблиць, позначена в списку червоним «неповна»: повернення з неї доведеться підтвердити окремою позначкою, бо таблиці, яких у копії немає, залишаться як були, і частина даних буде новою, а частина старою.

Копію можна й завантажити з комп'ютера, у блоці «Завантажити копію з комп'ютера»: це може робити лише власник і після повторного пароля. Приймається лише файл .sql або .sql.gz, знятий цим рушієм; будь-який інший SQL відхиляється. Завантажена копія потрапляє до списку, а повернути з неї базу — окрема дія з підтвердженням.

Крок 3. Копія на сторону #

Відкрийте «Копії та перенесення → Копії в іншому місці». Копія шифрується на сайті й іде за межі сервера: на S3-сумісне сховище, через WebDAV або SFTP. За замовчуванням вимкнено.
Сторінка «Копії в іншому місці»: стан і ключ шифрування
Сторінка «Копії в іншому місці»: стан і ключ шифрування

Контрольна сума файлу розшифрування на знімку — приклад для версії, з якої знято знімок: звіряйте її зі значенням у випуску вашої версії рушія.

  1. Створіть ключ шифрування. Він показується один раз і ніде не зберігається: ні тут, ні на сервері. Без нього копію не відкриє ніхто, тож збережіть його в менеджері паролів або роздрукуйте й тримайте окремо від сайту.
  2. Завантажте один раз файл nx-decrypt.php, звірте його контрольну суму SHA-256 зі значенням у випуску рушія на nex1on.com і зберігайте разом із ключем. Копії відкривають у себе на комп'ютері, без сайту, однією командою.
  3. Заповніть параметри сховища. Видайте ключу сховища право лише на запис, без видалення й без переліку: ключ лежить на цьому сайті, і якщо сайт зламають, ключ із правом видалення зітре й зовнішні копії. Тому старі копії краще не доручати чистити рушієві (для опції «залишати останні» потрібен ключ із правом видалення), а задати строк зберігання на боці сховища: життєвий цикл об'єктів.
  4. Натисніть «Перевірити зв'язок»: вона кладе один маленький файл і пробує прибрати лише його (ключ лише на запис видалити не дасть, тоді файл просто лишиться: це не помилка). Для SFTP звірте відбиток ключа сервера з тим, що повідомляє ваш хостинг: копія піде лише на сервер із точно таким ключем.
  5. Коли прийде перша копія, відкрийте її в себе й поставте позначку «Я відкрив копію в себе, ключ робочий»: так ви дізнаєтеся, що ключ робочий, раніше, ніж він знадобиться.

Надсилання можна ввімкнути лише після того, як ви підтвердили, що зберегли ключ; ввімкнення й зміна сховища питають пароль і сповіщають листом кожного власника.

Переїзд на інший хостинг #

Знадобляться три речі: свіжа копія бази, тека uploads і архів рушія тієї самої версії, що в копії, або новішої.
  1. Зробіть копію бази й звантажте її. Звантажте теку uploads через FTP.
  2. На новому хостингу створіть порожню базу й розпакуйте архів рушія (докладно — у статті про встановлення без SSH).
  3. Покладіть файл копії (.sql, .sql.gz або зашифрований .sql.gz.enc) у теку storage/import.
  4. Відкрийте сайт і на першому екрані натисніть «У мене вже є сайт на Nex1on — розгорнути з копії». Пройдіть мову, країну й базу: замість наступного кроку майстер запропонує «Розгорнути з копії».
Майстер встановлення: «Розгорнути з копії»
Майстер встановлення: «Розгорнути з копії»

Майстер перевірить копію й нічого не запише, поки вона не виявиться цілою. Префікс таблиць у базі має бути тим самим, що в копії, а якщо копію зняв новіший рушій, спершу поставте такий самий.

Навмисно не переноситься те, що не мусить жити на новому сайті без вашого відома: сеанси й «запам'ятати мене», посилання скидання пароля й запрошень, ключі API та входи застосунків, черги листів, а також налаштування, прив'язані до старого місця: джерело оновлень, копії на сторону, довірені проксі, ключі ШІ та соцмереж. Надсилання пошти перемикається на «у файл», а двокроковий вхід вимикається в усіх.

Наприкінці майстер просить власника назвати свій обліковий запис і підтвердити його старим паролем або задати новий: доки цього не зроблено, ніхто не ввійде під адміністраторським обліковим записом, а решта адміністраторів і модераторів лишаються закритими, доки ви не відкриєте їх у «Користувачах».

Переїзд на іншу адресу #

Коли сайт уже стоїть на новому домені, а в записах і меню лишилася стара адреса, відкрийте «Система → Діагностика → Перенесення на іншу адресу». Це може робити лише власник.
«Перенесення сайту на іншу адресу»: крок 1, адреси
«Перенесення сайту на іншу адресу»: крок 1, адреси

Майстер іде за кроками, і доки ви не натиснете «Застосувати», нічого не записується:

  1. Уведіть стару й нову адресу та натисніть «Пробний прогін»: ви побачите, скільки записів і посилань зміниться, за розділами.
  2. Рушій перевірить, що за новою адресою відповідає саме цей сайт, щоб посилання скидання пароля не пішли стороннім. Якщо нова адреса ще не готова (DNS переїжджає), кнопка вимкнена: виправте DNS і повторіть пробний прогін.
  3. Якщо у вас є ключ ліцензії, він прив'язаний до домену: рушій скаже, чи є в ньому нова адреса. Без нього сайт перейде в безкоштовний режим, доки ключ не перенесено.
  4. Для підтвердження наберіть назву нового домену. Далі рушій спитає пароль, сам зробить копію бази, запише це в журнал, надішле листа власникам і замінить адресу.

Не змінюються облікові записи, токени й ключі входу, журнали, черга, статистика, замовлення й платежі, зашифровані значення. Після заміни майстер показує чек-лист того, що рушій зробити за вас не може: вхід через соцмережі (адреса повернення в провайдера), домен печива сеансу, адреса «Від кого» та SPF, DKIM, DMARC для пошти, пошукові консолі, платіжні системи й вебхуки, сертифікат і CDN для нового імені. Доки стара назва вказує на цей сайт, рушій сам відповідає на неї перенаправленням 301 на той самий шлях нової адреси.

Перенесення вмісту із сайту на сайт #

Якщо потрібна не вся база, а сторінки, новини, мітки й файли, відкрийте «Копії та перенесення → Експорт та імпорт». Позначте, що покласти в архів, і звантажте його. Особисте й секретне не їде: ні облікових записів, ні замовлень, ні листів, ні ключів, ні паролів. Імпорт спершу лише перевіряє архів: ви побачите, що буде створено, оновлено й пропущено, і нічого не записується, доки ви не підтвердите. Той самий екран приймає й експорт WordPress (.xml) та таблицю (.csv).

Що перевірити #

  • Є свіжа копія бази, і ви знаєте, де вона лежить.
  • Копію на сторону ввімкнено, ключ шифрування збережено окремо від сайту, а першу копію відкрито у вас на комп'ютері.
  • Теку uploads скопійовано окремо, разом із копією бази.
  • Ви хоч раз перевірили повернення на порожній базі або на копії сайту, а не в день аварії.
  • Після переїзду: пошту налаштовано, двокроковий вхід увімкнено, паролі й ключі введено знову, старий файл копії видалено.

Якщо щось пішло не так #

  • «Копію зробити не вдалося». Найчастіше в сайту немає права запису в теку storage/backups: перевірте права.
  • Повернення урвалося. Не починайте інших правок, доки не натиснули «Повернути стан до спроби»: це поверне базу в стан до повернення.
  • Майстер пише, що копії потрібні оновлення, яких немає в цьому рушії. Копію зняв новіший рушій або видання з іншими модулями: поставте таке саме видання й повторіть.
  • Майстер пише про інший префікс таблиць. Поверніться на крок «База» й укажіть префікс, що в копії.
  • На новій адресі вхід не тримається. При зміні адреси всі виходять з облікових записів: увійдіть знову. Якщо вхід не тримається, перевірте домен печива сеансу в налаштуваннях.

Що далі #

Копія, яку ви жодного разу не відкривали, лишається припущенням. Оберіть день і перевірте повернення на пробній базі. Це займає пів години, і цього дня вам не доведеться переживати наново.
Поделиться: Telegram WhatsApp

Читайте также

Обсуждение

Комментарии

Обсуждение ещё не началось

Пока никто не высказался. Будьте первым.

Пожаловаться на запись