Перенос WordPress: полное руководство

Приветствую всех!

Migrate WordPress

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

У нас есть два основных подхода:

  • Переход на новый хост с использованием скрипта поиска и замены Interconnectit
  • Переход на новый хост с помощью бесплатного плагина All-in-One WP Migration

Мы перемещаем веб-сайты WordPress каждый день и почти каждый раз, когда мы это делаем, ограничения в среде размещения всегда являются чем-то, с чем мы сражаемся. У нас есть предпочтительный метод, который невероятно быстрый, но мы редко оказываемся в хостинговой утопии, где у нас есть все необходимые нам доступы, а протоколы поддерживаются обоими серверами.

Ко мне часто поступают вопросы про хостинг, которым я пользуюсь и поэтому решил указать хостинг в статье https://sprinthost.ru. Вы можете попробовать попользоваться хостингом 30 дней бесплатно. Чтобы понять, как будет работать Ваш сайт на этом хостинге просто перенести свой сайт (в этом поможет поддержка хостинга бесплатно) и и таким образом сможете понять подходит хостинг Вам или нет. На этом хостинге находятся сайты с 20 000 тысяч посещаемость и сайты чувствуют себя отлично. Рекомендую! Да, если делать оплату на 1 год то получаете скидку 25%. И что мне нравится - тех. поддержка всегда помогает в технических вопросах, за что им спасибо. Как Вы понимаете не всегда проходит всё гладко и нет желания, чтобы сайт не был доступен тем самым страдал трафик и доход.
Когда вы переносите WordPress, лучший подход — это тот, который позволяет вам сделать это быстрее…

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

Начало переноса WordPress

Начало переноса WordPress

Если вы настраиваете локальную среду разработки, промежуточный сервер или перемещаете сайт WordPress на новый хост, вам нужно будет перенести файлы и базу данных WordPress.

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

Перемещение данных с помощью SSH и командной строки

Перемещение данных с помощью SSH и командной строки

Одним из наиболее трудоемких процессов миграции WordPress является перемещение мультимедиа и других ресурсов с одного сервера на другой. Это может быть все, от фотографий до видео, CSS, шрифтов, плагинов и файлов тем.

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

Наш подход выглядит примерно так:

  1. SSH на сервер, где в настоящее время лежит сайт
  2. Сжатие каталогов, которые необходимо переместить (обычно это /wp-content)
  3. SSH на сервере, куда будет перемещен сайт
  4. Получение удаленных файлов с помощью SCP или wget
  5. Распаковка файлов и перемещение их в нужное место

Практические шаги, связанные с этим, могут немного варьироваться от сайта к сайту, но команды, которые вам, скорее всего, понадобятся, это tar, mv, rm, mkdir и scp или wget.

Идея состоит в том, чтобы сжать все файлы на старом сервере в один архив, который можно будет быстро скопировать на новый сервер. Это экономит массу времени и избавит от раздражающих факторов, как пропускная способность сети (скорость) от вашего провайдера.

Это также помогает обеспечить некоторый уровень качества, поскольку файлы копируются только один раз, а не два раза. Если это вообще возможно, мы пытаемся перенести файлы напрямую с одного сервера на другой, но с таким количеством хостов, которые не разрешают SSH, я часто использую SFTP.

Перемещение данных с помощью SFTP

Перемещение данных с помощью SFTP

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

Скачка файлов со старого сервера

Первое, что нам нужно сделать, это загрузить файлы сайта со старого сервера. Предполагая, что сайт является построенным на WordPress и не полагается на какие-либо файлы вне файловой структуры WordPress, единственное, что нам нужно загрузить, это весь каталог /wp-content.

Начните с нажатия кнопки «Подключиться» в программе Forklift (я использую WinSCP на Винде — мой предпочтительный клиент передачи файлов) и ввода учетных данных FTP (или SFTP):

Скачка файлов со старого сервера

Перейдите в корневой каталог сайта (на большинстве хостов это каталог public_html). Там вы найдете основные файлы WordPress, включая каталог /wp-content:

Скачка файлов со старого сервера

Просто нажмите и перетащите каталог /wp-content на рабочий стол или в другой каталог на вашем компьютере, чтобы начать загрузку. Имейте в виду, что все медиафайлы, загруженные на ваш сайт будут скачаны, так что этот процесс займет некоторое время, если ваш сайт имеет много фотографий и видео.

Загрузка файлов на новый сервер

После завершения загрузки подключитесь к новому серверу с помощью Forklift или вашего любимого FTP-клиента и перейдите к корню сайта на новом сервере, выполнив указанные выше действия. Если Вы видите основные файлы WordPress, вы будете знать, что находитесь в правильном месте.

Все, что вам нужно сделать сейчас, это нажать и перетащить копию папки /wp-content, которую вы уже загрузили на свой компьютер. Forklift предупредит вас, что уже есть папка с именем /wp-content, и спросит, хотите ли вы его заменить. Отметьте «Применить ко всем» и нажмите «Заменить»:

Загрузка файлов на новый сервер

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

Перенос WordPress с Sequel Pro и Interconnect it Search and Replace DB

Перенос WordPress с Sequel Pro и Interconnect it Search and Replace DB

Основные шаги для копирования базы данных WordPress с одного сервера на другой с помощью этого способа можно отнести следующее:

  1. Экспорт копии базы данных со старого сервера с помощью Sequel Pro
  2. Импорт базы данных на новый сервер с помощью Sequel Pro
  3. Обновление URL-адресов сайта с использованием Search and Replace DB

В этом примере мы собираемся перенести сайт из http://www.testing.dev на http://testing2.dev с помощью Sequel Pro для экспорта и импорта базы данных, а также поиска и замены БД для обновления URL-адресов в базе данных.

Обратите внимание, что в этом примере мы не только перемещаем базу данных, но и изменяем доменное имя в ней. Это довольно распространенная практика, особенно при перемещении сайта WordPress из локальной среды разработки на удаленный сервер.

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

Экспорт базы данных со старого сервера

Откройте Sequel Pro и введите учетные данные базы данных. Если Вы не знаете свои учетные данные базы данных, найдите их в верхней части файла wp-config.php, который доступен в FTP-клиенте с остальными основными файлами WordPress. Если DB_HOST является «localhost», вам нужно будет или ввести IP-адрес сервера или получить имя хоста MySQL от вашей хостинговой компании:

Экспорт базы данных со старого сервера

После подключения к базе данных ыы увидите все таблицы базы данных, перечисленные в левой части окна Sequel Pro:

Экспорт базы данных со старого сервера

В строке меню выберите «Файл — Экспорт». Представленные по умолчанию параметры должны быть точными, но вы можете захотеть изменить, где хранится файл экспорта, чтобы его легче было найти позже.

Импорт базы данных на новый сервер

Затем подключитесь к базе данных на новом сервере с помощью Sequel Pro, выполнив те же действия, что и раньше.

После того, как Sequel Pro подключится к новому серверу, удалите таблицы, которые были созданы при установке WordPress. Выберите все таблицы в Sequel Pro, щелкните правой кнопкой мыши и выберите «Удалить таблицы». Нажмите «Удалить», когда Sequel Pro спросит, хотите ли вы удалить таблицы.

Импорт базы данных на новый сервер

Как только все они будут удалены, мы сможем импортировать базу данных с нашего старого хоста. В строке меню выберите «Файл — Импорт». Выберите файл базы данных, который вы экспортировали ранее со старого сервера и нажмите кнопку «Открыть». Затем Sequel Pro начнет импорт базы данных.

Обновление URL-адресов сайта в базе данных

После импорта базы данных (это может занять некоторое время в зависимости от размера базы данных) нам потребуется выполнить поиск и замену, чтобы обновить URL-адреса сайта в базе данных. В этом примере мы будем обновлять URL-адрес сайта http://www.testing.dev на http://testing2.dev это необходимо по двум причинам:

  1. Для правильной работы WordPress он должен знать URL-адрес сайта и хранить эту информацию в таблице wp_options.
  2. Любые записи, страницы или пользовательские типы записей, содержащие внутренние ссылки, будут ссылаться на старый URL-адрес (www.testing.dev) и не будет работать должным образом на новом сайте

Search and Replace DB by Interconnectit это действительно удобный инструмент для легкого выполнения поиска и замены в базе данных WordPress.

Чтобы начать работу, загрузите инструмент, распакуйте его и загрузите весь каталог Search-Replace-DB-master в корень сайта с остальными основными файлами WordPress. После того, как он будет загружен, откройте окно браузера и перейдите в каталог, который вы только что загрузили: http://www.testing.dev/Search-Replace-DB-master

В большинстве случаев информация базы данных уже заполнена. Если нет, вы можете просто ввести информацию, которую Вы использовали для подключения к базе данных с Sequel Pro:

Search and Replace DB by Interconnectit

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

В этом примере мы меняем http://www.testing.dev на http://testing2.dev. Поскольку оба этих URL содержат http://, мы знаем, что нам не нужно включать это в строку поиска. Однако, поскольку мы больше не используем www. в URL-адресе, мы захотим включить его в строку поиска. Итак, теперь, когда мы точно знаем, что мы будем заменять, мы можем ввести его в поля ввода «поиск…» и «заменить…» следующим образом:

Search and Replace DB by Interconnectit

Затем мы выполним «Пробный прогон», чтобы обеспечить ожидаемые результаты. Нажмите кнопку «Пробный прогон»:

Search and Replace DB by Interconnectit

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

Вот и все! Файлы были загружены, а база данных была импортирована и обновлена с новыми URL-адресами. Если домен был указан правильно, вы можете посмотреть на сайте по http://testing2.dev.

Не забудьте удалить сценарий поиска и замены с сервера после изменения URL-адреса. Оставив его может быть большой риск для безопасности.

Этот процесс является более сложным, чем при использовании некоторых других инструментов, но я думаю, что он очень надежен и делает фантастическую работу по укреплению основных концепций управления файлами и базами данных. Когда вам доверяют перемещение чужого веб-сайта, это лучшая практика!

Перемещение сайта WordPress на новый хост с помощью All in One WP Migration

All-in-One WP Migration

Перенос сайтов WordPress является общей и раздражающих задач. Независимо от того, находится ли это между двумя разными удаленными веб-серверами, между сервером разработки и производством или от производства до локального, существует множество направлений миграции. All in One WP Migration остается инструментом выбора для большинства большую часть времени. Это, безусловно, один из лучших бесплатных способов продвижения сайта на WordPress.

Если вы недавно перешли на новый хост, вам нужно будет переместить существующий сайт. Я подробно расскажем, как быстро переместить всю информацию со старого сайта на установку WordPress вашего нового хостинга (т.е. «миграцию»), используя All in One WP Migration от ServMask.

Войдите в область администрирования вашего сайта, если вы еще этого не сделали.

Выберите «Плагины — Добавить новый» в меню слева.

Введите «All in One WP Migration» в правом верхнем поле поиска, а затем нажмите кнопку «Установить сейчас», когда вы найдете этот плагин от ServMask.

Перемещение сайта WordPress на новый хост с помощью All in One WP Migration

Нажмите кнопку «Активировать», чтобы активировать плагин.

Найдите меню «All-in-One WP Migration» (в разделе «Tool» на левой боковой панели) и выберите «Export».

Перемещение сайта WordPress на новый хост с помощью All in One WP Migration

Нажмите «Экспортировать в», а затем выберите опцию «файл».

Перемещение сайта WordPress на новый хост с помощью All in One WP Migration

После запуска плагина нажмите кнопку во всплывающем окне, чтобы загрузить файл. Загружаемый файл будет иметь расширение .wpress. Изменение этого имени расширения приведет к сбою миграции, поэтому оставьте его как есть.

Перемещение сайта WordPress на новый хост с помощью All in One WP Migration

Повторите шаги 1-4 в новой установке WordPress, поддерживаемой вашим новым сообщением. (Короче говоря, убедитесь, что плагин установлен на принимающем сайте).

На вашем новом сайте WordPress выберите «Импорт» в меню «All-in-One WP Migration».

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

Перемещение сайта WordPress на новый хост с помощью All in One WP Migration

Перемещение сайта WordPress на новый хост с помощью All in One WP Migration

После завершения импорта файла нажмите кнопку «Продолжить». Поскольку это новая установка, вам не нужно беспокоиться о том, что что-то перезапишется.

Перемещение сайта WordPress на новый хост с помощью All in One WP Migration

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

Перемещение сайта WordPress на новый хост с помощью All in One WP Migration

В меню слева выберите «Настройки — Постоянные ссылки», затем нажмите «Сохранить изменения». Нет необходимости редактировать информацию о структуре постоянных ссылок по умолчанию.

Перемещение сайта WordPress на новый хост с помощью All in One WP Migration

Вот и все! Проверьте новый сайт, чтобы убедиться, что все выглядит правильно.

На этом все — до скорых встреч!


Обо мне
Юрич:
Занимаюсь созданием сайтов на WordPress более 6 лет. Ранее работал в нескольких веб-студиях и решил делиться своим опытом на данном сайте. Пишите комментарии, буду рад общению.
4 комментария к статье "Перенос WordPress: полное руководство"
  1. Юрич: 18.10.2018 в 00:13

    Александр, конечно можно!
    Но мне этот плагин очень понравился — переносит в 2 клика. А Дубликатор я не пробывал — хотя он на одном месте с моим стоит)))

  2. Александр: 17.10.2018 в 23:24

    Можно упростить перенос. Для небольших сайтов — плагин Duplicator : Как перенести вордпресс сайт на другой домен с помощью плагина Duplicator — https://alexkoval.name/kak-perenesti-vordpress-sajt-na-drugoj-domen.html

  3. Юрич: 11.08.2018 в 15:45

    Это вам так кажется)) Я переносил так свой сайт — поверь, вам не понравится. Объясню почему:
    1) Это не их сайт
    2) Им по барабану ваш сайт и будет ли он после переноса работать (сошлются на то, что сделали все правильно)
    3) Это совсем не очень хорошая идея
    4) Если вам не помогла моя статья — я могу вам перенести ваш сайт (как вариант)

  4. Габриэлла: 11.08.2018 в 15:34

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

Заказать сайт