Экспорт и импорт

Экспорт и импорт переносят конфигурацию панели одним JSON-файлом: все сайты со всеми настройками и общий список заблокированных IP. Так удобно переехать на новый сервер, настроить второй сервер так же, как первый, или сохранить копию перед крупными изменениями.

Экспорт

Откройте Настройки и найдите карточку Резервная копия настроек. Нажмите Экспорт настроек, и браузер скачает JSON-файл.

В файл попадают:

  • каждый сайт: домен, псевдонимы, название, обработчик, настройки PHP и Node.js (включая переменные окружения Node.js), переключатели SSL, владельца, переключатель .htaccess и все настройки защиты;
  • общий чёрный список IP-адресов и сетей.

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

Что не экспортируется

  • Файлы сайтов. В экспорт попадает только конфигурация, файлы из /var/www копируйте отдельно (например, через rsync по SSH).
  • Сертификаты и ключи. Новый сервер выпустит свои, как только DNS будет указывать на него.
  • Секрет пропусков для обязательных параметров ссылки: он остаётся на сервере, где был создан. На другом сервере посетитель, который приходил по вашей ссылке, получит новый пропуск, когда снова откроет ссылку.
  • Настройки панели со страницы «Настройки» и из .env (вход в панель, токены, ключи).
  • Порт Node.js у сайта. Новый сервер назначит свой.
  • Базы данных. WardPane 2.0 ими не управляет, переносите их сами, например через mysqldump.

Пароли

Пароль защиты HTTP Basic экспортируется только в виде хеша. В файле от старой версии пароль может лежать открытым текстом; такой файл тоже принимается, а пароль хешируется во время импорта.

Импорт

  1. На целевом сервере откройте Настройки > Резервная копия настроек и нажмите Импорт настроек….
  2. Выберите JSON-файл.
  3. Выберите режим и нажмите Импортировать.
Режим Что делает
Объединить Добавляет новые сайты, обновляет сайты с тем же доменом, остальные оставляет.
Заменить То же самое, но сайты, которых нет в файле, удаляются. Их файлы в /var/www сохраняются.

После этого скопируйте файлы сайтов и направьте DNS на новый сервер. Сертификаты выпустятся без дополнительных шагов.

Проверки при импорте

Сначала панель проверяет весь файл и только потом применяет его за один шаг, так что импорт не может оборваться на середине и оставить панель импортированной наполовину.

  • Сайт с ошибкой пропускается, а в результате импорта он указан вместе с причиной. В режиме замены такой сайт тоже не удаляется: из-за испорченной записи работающий сайт не пропадёт.
  • В режиме замены файл, в котором нет ни одного пригодного сайта, отклоняется целиком, иначе импорт удалил бы все сайты.
  • Записи белого списка из старых версий по возможности исправляются. Неаккуратные, но понятные записи вроде 198.51.100.0/ 24 или 1.2.3.4/ поправляются, а нечитаемые отбрасываются. Оба случая видны в результате импорта и попадают в журнал панели.
  • Гео-группы, которых панель не знает, отбрасываются, а небезопасные папки PHP с правом записи убираются, каждый раз с пометкой.

Под кнопками панель затем показывает, сколько сайтов добавлено и обновлено, и все пометки.