Как перенести Wordpress на другой хостинг?

Hosting master
Как перенести Wordpress на другой хостинг?

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

Существует два способа: простой и посложнее. Мы рассмотрим здесь оба способа, начнем с простого.

Первый способ. Перенос сайта Wordpress на хостинг с помощью техподдержки

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

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

Перенос сайта Wordpress на хостинг с помощью техподдержки - Акция Timeweb

Заходим в Панель управления > Помощь > Служба поддержки > Как мне перенести мой сайт. Далее заполняем необходимые поля с доступом (это данные от предыдущего хостинга, он должен так или иначе вам их предоставлять). 

Перенос сайта Wordpress на хостинг с помощью техподдержки - Техподдержка

Перенос сайта Wordpress на хостинг с помощью техподдержки - Тикет

Все! Ничего сложного. Теперь остается только ждать реакции техподдержки на ваш запрос. Обычно они реагируют быстро, в течение 1-2 часов, в зависимости от загрузки.

Второй способ. Перенос сайта Wordpress на хостинг своими руками

Этот способ переноса Wordpress на другой хостинг требует чуть более продвинутого подхода. Нужно узнать ряд базовых понятий: что такое FTP, что такое База Данных и где ее искать. Также установите на ПК программу FileZilla (она бесплатная и ничего не требует).

Поверьте, все сайты выглядят с точки зрения работы примерно одинаково. У них есть файлы и База Данных. Это все, что нужно знать для переноса. В качестве примера используется админ панель веб-хостинга Timeweb.

1. Создаем, сохраняем архив с файлами сайта

Итак, первым делом нужно сохранить архив с файлами сайта. Для этого зайдите в файловый менеджер хостинга, выделяем все файлы и жмем "архивировать". Обычно это выглядит примерно так:

Создаем, сохраняем архив с файлами сайта

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

2. Выгружаем и сохраняем Базу Данных

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

Выгружаем и сохраняем Базу Данных

3. Устанавливаем клиент FileZilla

Итак, мы имеем 2 основных файла: дамп Базы Данных и архив с сайтом. Установив FileZilla на компьютер, вы должны ввести в программе адрес входа на ftp нового хостинга. где лежат файлы вашего сайта. Для этого нужно знать адрес сервера, логин, пароль. Их вам предоставляет ваш хостинг во время регистрации, вы должны их знать. Заполняем, как показано на рисунке ниже. 

Устанавливаем клиент FileZilla

Если вход прошел успешно, то вы увидите в правой стороне в публичной части своего сайта (часто это "public_html", "web" или подобные им папки). Выглядит это примерно так:

файлы на сервере клиент FileZilla 2

4. Заливаем с помощью FileZilla архив на новый хостинг

Заходим в FileZilla и вводим параметры нашего нового хостинга. Переходим в корневую папку сайта ("public_html" / "web" и т.п.).

ВАЖНО! Почему мы используем FileZilla (любой другой клиент)? Потому что хостинг может не принять файлы огромного размера (например, 2-4 Гб) через Файл менеджер. И вы просто будете получать ошибку или ничего не произойдет.

Теперь нужно просто перетащить архив из левой колонки, которая обозначает папку на вашем ПК, в правую часть (корневая папка сайта на новом хостинге). Предварительно удалите оттуда все созданные автоматически хостингом файлы, типа index.php, index.html, index.htm и прочее. Они нам там не нужны, и будут мешать.

Заливаем с помощью FileZilla архив на новый хостинг 1

 

Заливаем с помощью FileZilla архив на новый хостинг 2

Перетащили? Идем дальше.

5. Создаем Базу Данных на хостинге

Идем в меню "Базы Данных" (оно должно быть на любом приличном хостинге). И создаем новую базу данных. Сохраните логин и пароль от своей новой базы, они пригодятся.

Создаем Базу Данных на хостинге

6. Загружаем Базу Данных с помощью phpmyadmin

Переходим в эту базу через phpMyAdmin (это такая панель для работы с базами данных, кто не понял). Вводим логин, пароль из 6 пункта. Теперь просто импортируем базу сюда. Обратите внимание на то, что кодировка базы скорее всего у вас должна быть utf-8. В случае разницы кодировок вашей базы и настроек на сервере, неизбежно произойдет конфликт и придется выбирать нужную кодировку.

Загружаем Базу Данных с помощью phpmyadmin

7. Разархивируем файлы на хостинге

Итак, база распакована, архив лежит наготове. Распаковываем архив через Файл менеджер хостинга (НЕ через FileZilla). Просто заходим туда и жмем "Разархивировать". Обычно данная функция доступна на любом хостинге. Через какое-то время файлы распаковываются и мы видим аккуратно распакованный сайт. Если архив не большой, оставьте его, пока не запустите сайт, потом удалите.

8. Меняем файл config для сайта

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

Возвращаемся в FileZilla, идем в корневую папку нашего сайта и вносим правку в файл конфига Wordpress wp-config.php. По умолчанию FileZilla открывает все в стандартном Notepad Windows. Это нас вполне устраивает. После внесения правок в файл, жмем сохранить. FileZilla спросит нас, хотим ли мы отправить эти данные на сервер, и мы соглашаемся.

Меняем следующие поля на новые (нового хостинга):

define( 'DB_NAME', 'new_database' ); - наша новая база.

define( 'DB_USER', 'new_database_user' ); - имя пользователя базы данных.

define( 'DB_PASSWORD', 'database_password' ); - пароль от базы.

define( 'DB_HOST', 'localhost' ); - здесь бывают и другие значения, зависит от хостинга, но в основном, это localhost. Если что, техподдержка быстро выручит с такими вопросами.

Меняем файл config для сайта

9. Правим Базу Данных при смене доменного имени

Если вы меняете доменное имя в Wordpress на новое, то необходимо выполнить пункт 9. Если нет, пропускаем 9 пункт полностью. Дело в том, что Wordpress по умолчанию создает в базе данных абсолютные пути (т.е. пути вместе с доменным именем) для некоторых объектов. Например, ссылки страниц и ссылки на комментарии. Сайт не заработает, как бы вы ни старались. Как с этим бороться?

Идем в знакомый нам уже phpMyAdmin. Пишем запросы в консоли MySQL и жмем "ОК".

Правим Базу Данных при смене доменного имени

ВАЖНО! Обратите внимание на префикс перед названием таблиц Баз Данных. Здесь в примере это WP_ (wp_options, wp_posts и т.д.). У вас может быть там другой префикс. Замените эти префиксы на свои, если они отличаются. Префикс ваших таблиц вы можете видеть в левом списке таблиц в phpMyAdmin.

SQL-запросы, необходимые для переноса сайта на WordPress на другой домен:

UPDATE wp_options SET option_value = REPLACE(option_value, 'http://old.site.ru', 'https://new.site') WHERE option_name = 'home' OR option_name = 'siteurl';

UPDATE wp_posts SET post_content = REPLACE (post_content, 'http://old.site.ru', 'https://new.site');

UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, 'http://old.site.ru','https://new.site');

Где http://old.site.ru - url старого сайта, а https://new.site - url нового. 

Если же в комментариях были внутренние ссылки на какие-то посты и страницы сайта — для комментариев тоже следует сделать свой SQL-запрос:

UPDATE wp_comments SET comment_content = REPLACE (comment_content, 'http://old.site.ru', 'https://new.site');

UPDATE wp_comments SET comment_author_url = REPLACE (comment_author_url, 'http://old.site.ru', 'https://new.site');

Это "вылечит" наши пути и можно переходить к следующим пунктам.

10. Проверяем работу сайта пока без смены DNS

Если мы все сделали правильно, то теперь наш сайт должен запуститься. Но... только вот осталось проверить, а действительно ли он работает на данном хостинге? На помощь нам приходит файл 'hosts'.

Идем сюда: C:\Windows\System32\drivers\etc. Открываем файл 'hosts', например, с Notepad. Добавляем туда запись вида:

12.43.98.13 mysite.ru - ip нового хостинга + имя домена.

Проверяем работу сайта без смены DNS

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

11. Меняем настройки DNS для домена

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

Настройки NS у Timeweb

А можно вообще не мучаться и просто перенести домен к хостингу. Это стандартная процедура и ничего вам не будет стоить. Так же, напишите в тех поддержку и проблема будет решена. 

12. Пьем чай, ждем, смотрим любимые сериалы...

Просто пьем чай...

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

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

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

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

И, удачи вам с переносом вашего сайта! ;)