Wordpress

Как правильно перенести WordPress

Переносим WordPress на другой хостинг или на новый домен без ошибок и неприятных последствий. Если вы уже сталкивались с этой задачей, и после не работают ссылки, или вместо страницы открывается белый экран, вы явно сделали что-то не так. Ниже будет подробная инструкция, как сделать всё правильно и избежать грубых ошибок.

Для работы нам понадобится Far Manager

  • Создаём резервную копию файлов сайта
  • Как создать архив с файлами сайта
  • Создаём резервную копию базы данных сайта
  • Как создать резервную копию базы данных с помощью PhpMyAdmin
  • Создание копии базы данных с помощью mysqldump
  • Перенос с локального сервера на хостинг
  • Перенос файлов сайта
  • Перенос базы данных
  • Как изменить адрес WordPress
  • Используем Search-Replace-DB
  • В заключение

Создаём резервную копию файлов сайта

Для создания бекапа (резервной копии) сайта на WordPress можно пойти несколькими путями

  1. Воспользоваться плагином, например, Dublicator
  2. Сделать это вручную

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

 

Как создать архив с файлами сайта

Во втором случае, допустим, ваш сайт располагается в директории /var/www/sheensay.ru
Авторизуетесь в вашем хостинге с помощью Far Manager или иного другого файлового менеджера по ssh, переходите в раздел /var/www/ вводите команду

1
tar -czvf backup.tar.gz sheensay.ru

где sheensay.ru — это директория, в которой содержится ваш сайт.
В результате, увидите файл backup.tag.gz. Его надо скачать, в нём содержится архив файлов вашего сайта

Создаём бекап файлов WordPress

Создаём бекап файлов WordPress

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

На худой конец, просто скопируйте файлы сайта к себе через ftp/ssh, однако, этот вариант крайне неудобен и нежелателен.

 

 

Создаём резервную копию базы данных сайта

Для создания бекапа mysql базы данных можно

  1. Воспользоваться плагинами: WP-DB-Backup, WP Database Backup и т.д.
  2. Использовать phpMyAdmin
  3. Создать копию базы данных mysql через консоль

Первый случай также не рассматриваю, ибо не пользуюсь. Если нужен обзор — напишите в комментариях.

 

Как создать резервную копию базы данных с помощью PhpMyAdmin

Во втором случае, который я, кстати, рекомендую как самый удобный, вы просто авторизуетесь в PhpMyAdmin и создаёте дамп базы данных

Авторизуемся в phpmyadmin

Авторизуемся в phpmyadmin

Параметры настроек экспорта базы данных

Параметры настроек экспорта базы данных

  1. Находим нашу базу данных
  2. Переходим в Экспорт
  3. Выбираем режим Обычный — отображать все возможные настройки
  4. Убеждаемся, что все таблицы выделены
  5. Выбираем компрессию gzip
  6. Следим, чтобы формат был SQL
  7. Смотрим, чтобы все галочки были проставлены как надо
Параметры настроек экспорта базы данных

Параметры настроек экспорта базы данных

На выходе на скачивание получаем файл wptest.tar.gz, где wptest — название нашей базы данных.

 

Создание копии базы данных с помощью mysqldump

Если у вас нет доступа к phpMyAdmin, вы можете создать дамп базы данных через консоль с помощью mysqldump.
Допустим, для доступа к базе данных у нас такие параметры: логин: root, пароль: pass, название базы данных wptest.
Авторизуемся на хостинг через ssh и в консоль записываем

1
mysqldump -u root -p pass wptest | gzip > wptest.tar.gz

На выходе получится файл wptest.tar.gz, в котором содержится дамп базы данных

Дамп базы данных

Дамп базы данных

 

Перенос с локального сервера на хостинг

Итак, мы имеем 2 файла с бекапами нашего сайта: backup.tag.gz — с файлами сайта, и wptest.tar.gz — с дампом базы данных. Если мы будем переносить наш сайт с денвера (или иного локального сервера) на хостинг, по сути, ничего не поменяется, разве что архив с файлами сайта нужно будет собрать штатным архиватором (тот же Far Manager прекрасно с этим справляется). Так же можно перенести сайт обратно на денвер или любой другой хостинг, поэтому направление переноса не имеет значения.

 

Перенос файлов сайта

Для начала, перенесём файлы сайта. Если возможно, делаем это с помощью файлового менеджера: авторизуемся по ssh и закачиваем backup.tag.gz в нужную директорию.

Архив с файлами сайта нужно залить именно на тот уровень иерархии, с которого он создавался. В нашем случае, нужно заливать в /var/www/
Впрочем, при возникновении трудностей для исправления ситуации можно воспользоваться UNIX-командой mv

Распаковку производим с помощью команды

1
tar -xfvz backup.tar.gz

Если у вас VDS/VPS, после переноса файлов не забудьте установить правильные chown и chmod

 

Перенос базы данных

Теперь переходим в phpMyAdmin нового хостинга и импортируем базу данных

Импортируем дамп базы данных

Импортируем дамп базы данных

  1. Авторизуемся в phpmyadmin
  2. Переходим в раздел импорт
  3. Выбираем архив с дампом БД
  4. Следим, чтобы кодировка была правильной
  5. Формат должен быть SQL
  6. Сохраняем

Всё, импорт на этом почти завершён. Осталось подключить сайт к базе данных.
Для этого находим в корне сайта файл wp-config.php и записываем туда данные, предоставленные хостингом

Настройка подключения к базе данных

Настройка подключения к базе данных

 

Как изменить адрес WordPress

Если во время переноса WordPress вам понадобится изменить домен, не лезьте в базу данных менять что-либо вручную, так как есть риск переломать сериализованные строки.
Лучше воспользуйтесь специальной утилитой Search-Replace-DB от компании Interconnect IT, это проще и безопаснее. Вам будет достаточно лишь доступа по SSH или FTP, и она сможет внести изменения в сериализованные значения правильно.

 

Используем Search-Replace-DB

  1. Скачиваем последнюю версию Search-Replace-DB
  2. Создаём в корне сайта папку с любым названием, распаковываем скачанный архив туда. Тут загвоздка в том, что любой открывший эту директорию получает доступ к базе данных сайта. Поэтому тут либо создаём сложноподбираемое название директории, либо воспользуемся защитой htaccess от постороннего доступа
  3. Как правильно изменить адрес WordPress

    Как правильно изменить адрес WordPress

    Как правильно изменить адрес WordPress

    Как правильно изменить адрес WordPress

    В строку replace вносим старый домен, with — новый. Данные для подключения к базе данных вносятся автоматом.
    Отмечаем All tables, потом жмём Live Run.

    Не закрывайте страницу, пока утилита не завершит все изменения

Утилитой можно воспользоваться не только для изменения имени домена в базе данных. Она может помочь при внесении других правок при необходимости, сделав это аккуратно и сохранив структуру данных.
По окончанию работ директорию со скриптами лучше всего удалить для безопасности. Советую сделать это вручную через FTP или SSH.

 

В заключение

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

Leave a Comment

Ваш e-mail не будет опубликован. Обязательные поля помечены *