Wordpress на другой домен. Перенос WordPress на другой хостинг: особенности, порядок действий

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

Перенос файлов и базы сайта на Вордпресс из одного домена в другой

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

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

2. Экспортируем дамп базы данных. Для этого проходим в phpMyAdmin, выделяем базу в левом списке и нажимаем сверху на кнопку Экспорт

Еще: Архивы файлов и базы сайта в Макхосте можно сделать автоматически из меню Резервные копии раздел Создать резервную копию. Файлы будут помещены в каталог private

Теперь имея исходные файлы Вашего сайта можно перейти ко второму этапу: это перенос данных в новый домен и настройка. Советую сделать их копию и сохранить отдельно, на случай 3. Переходим в корневой каталог нового домена и производим загрузку архива. Выполнить это опять же можно как через файловый менеджер панели управления хостинга, так и через FTP. Файл можно распаковать в файл-менеджер
4. Производим импорт sql дамп в базу данных через phpMyAdmin. Для этого, авторизовавшись в phpMyAdmin требуемой базы выбираем базу в левом списке и затем нажимаем в верхней панели на кнопку Импорт

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

Изменение домена в настройках Вордпресс

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

Смена домена в Вордпресс через phpMyAdmin

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

Поочередно или все три сразу скопируйте и выполните запросы что указаны ниже, исправив параметры

UPDATE wp_options SET option_value = REPLACE(option_value, "http://старый-домен.ru", "http://новый-домен.ru") WHERE option_name = "home" OR option_name = "siteurl"; UPDATE wp_posts SET guid = REPLACE(guid, "http://старый-домен.ru","http://новый-домен.ru"); UPDATE wp_posts SET post_content = REPLACE(post_content, "http://старый-домен.ru", "http://новый-домен.ru");

Важно! Прописывать нужно домен без слеша / в конце, как это указано в примере.
Запрос не выполнится если у вас префикс в таблицах не wp_ , а другой.
Если например у вас префикс pref_ , то в коде запроса пропишите его: UPDATE pref_posts SET…

Смена домена в Вордпресс в sql-дампе через текстовый редактор

Другим способом обновления информации в базе данных является ручная замена ссылок со старого домена на новый. Авторизуйтесь через phpMyAdmin в базе данных старого домена и выполните экспорт, если еще сделалм. Текстовым редактором откройте полученный файл sql и выполните поиск с заменой все упоминания старого домена на новый. После обновления информации выполните импорт дампа в базу на хостинге, очистив её предварительно от старых таблиц.

На этом перенос и настройка завершены.

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

Тогда вам нужно будет найти нового провайдера и осуществить перенос сайта WordPress на другой хостинг . Компании, которые я рекомендую:

eHost — недорогой провайдер для небольших WordPress сайтов. В качестве панели управления данный хостинг использует CPanel ;
iPage — еще один отличный хостинг-провайдер с доступными ценами. Это отличный вариант для размещения сайта на WordPress . Здесь доступна опция управляемого хостинга и возможность перейти на VPS или выделенный сервер;
BlueHost — является лучшим выбором для размещения бизнес-ресурсов. Компания предоставляет несколько тарифных планов, управляемый хостинг для WordPress , VPS и выделенный сервер. Этот провайдер подойдет для любых сайтов.

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

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

Шаг 1: Перенос файлов WordPress

Перенос сайта на другой хостинг можно осуществить с помощью FTP или с помощью CPanel . Я опишу оба метода.

Вам нужно использовать FTP-клиент , чтобы подключиться к серверу. Я рекомендую использовать FileZilla . Это бесплатная и простая в использовании программа. Вам потребуется учетная запись для FTP на новом и старом хостинге, чтобы подключиться к серверам.

Учетную запись для FTP можно создать в панели управления хостингом:

  • Подключитесь к серверу старого провайдера и получите доступ к папке public_html . Здесь хранятся файлы сайта;
  • Скачайте файлы на компьютер;
  • После завершения скачивания подключитесь к серверу нового хостинга и загрузите эти же файлы в папку public_html . Теперь можно приступить к перемещению базы данных.

Рассмотрим, как перенести сайт на Вордпресс на другой хостинг с помощью CPanel . Это более быстрый процесс, и он не потребует дополнительного программного обеспечения. Этот метод работает, только если и старый, и новый хостинг используют CPanel :

  • Войдите в свой аккаунт на старом хостинге и откройте CPanel ;
  • Перейдите в диспетчер файлов и найдите папку, в которой хранятся файлы сайта; она должна находиться в папке public_html ;
  • Выберите папку и сожмите ее в .zip-архив с помощью опции «Сжать »;
  • С помощью кнопки загрузки сохраните архив с файлами на компьютере;
  • После завершения загрузки зайдите на свой новый хостинг и получите доступ к CPanel ;
  • Добавьте ваше доменное имя на новом хостинге в разделе «Добавление домена ». Таким образом, вы создадите папку на новом хостинге;
  • Загрузите созданный архив на новый хостинг с помощью диспетчера файлов и функции загрузки в папку public_html (или в папку, которая была создана на предыдущем этапе );
  • Распакуйте сжатые файлы с помощью функции «Распаковать », точно указав папку назначения;
  • На данный момент вы успешно перенесли файлы на новый хостинг, и теперь можно начать перенос базы данных.

Шаг 2: Перемещение базы данных WordPress

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

  • Войдите в CPanel старого хостинга и перейдите к инструменту PhpMyAdmin ;
  • После подключения к серверу СУБД в левой части экрана вы увидите все свои базы данных на хостинге. Выберите БД, которую требуется переместить. Если не знаете, какая база данных вам нужна, откройте файл wp-config.php (находится в корневой папке WordPress ) и найдите в нем строку define (‘DB_NAME’, ‘your_database_name’) ;. Она содержит в себе имя базы данных, которую использует ваш ресурс;
  • Выберите нужную базу в левой части экрана. Затем перейдите в меню «Экспорт «;
  • Экспортируйте выбранную БД в режиме «Быстрого экспорта » в формат SQL и сохраните ее на компьютере;
  • Войдите в CPanel нового хостинга и с помощью мастера баз данных MySQL создайте новую БД и пользователя. Сохраните имя пользователя и пароль, потому что позже вам будут нужны эти данные:
  • Перейдите в PhpMyAdmin на новом хостинге и в левой стороне панели выберите базу данных, которую только что создали;
  • Нажмите на кнопку «Импорт » в верхней части окна и выберите базу, сохраненную на компьютере;
  • На данный момент вы закончили перенос базы данных, но это еще не все.

Шаг 3: Обновление конфигурационного файла

В конце переноса сайта WordPress на другой хостинг нужно связать сайт с базой данных. Откройте файл wp-config.php на новом хостинге. Найдите в нем следующие строки и замените старые данные новыми, которые вы сохранили ранее:

/** The name of the database for WordPress */ define("DB_NAME", "старое_имя_базы_данных"); /** MySQL database username */ define("DB_USER", "старый_пользователь_базы_данных"); /** MySQL database password */ define("DB_PASSWORD", "старый_пароль_базы_данных"); /** MySQL hostname */ define("DB_HOST", "localhost");

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

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

Шаг 4: Перенос учетных записей электронной почты

Перенос учетных записей электронной почты очень похож на перемещение файлов WordPress . Все настройки и сообщения электронной почты из ваших учетных записей находятся в папке public_html/mail/ . Вы можете использовать FTP-клиент или CPanel для их перемещения.

Скачав учетные записи электронной почты со старого хостинга и загрузив их на новый, вы сохраните все настройки. Благодаря этому не нужно будет изменять настройки электронной почты в почтовом клиенте (в Thunderbird , Outlook и других ).

Шаг 5: Изменение DNS сервера и перемещение домена

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

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

Правильный перенос сайта на Wordpress

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

1. Во-первых, необходимо скопировать все файлы со своего сайта.

2. Также экспортируем со старого хостинга базу данных.

3. После переноса всех файлов можно подключать на новом хостинге.

4. Создаем базу данных и импортируем в нее данные, которые вы сохранили.

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

6. На этом шаге можно проверить правильность выполнения всех действий. Для этого можно использовать технический домен или временный URL.

7. На последнем этапе нужно изменить DNS домена. Для этого переходим в панель управления регистратора доменных имен.

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

Перемещаем файлы со старого хостинга

Это довольно простое действие. Если вы сами занимались созданием сайта, то сможете быстро разобраться и все правильно сделать. Чтобы произвести перенос WordPress блога на другой хостинг, нужно подключиться по FTP к старому серверу. После этого скачиваем все данные себе на компьютер. Также необходимо предварительно подготовить папку, в которую вы сохраните файлы со старого хостинга.

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

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

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

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

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

Перенос сайта на WordPress с одного домена на другой

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

Итак, как его привязать? Как мы уже выяснили, нужно перейти в панель управления. Далее необходимо найти раздел «Домены» и перейти к нему. Далее нажимаем на кнопку «Добавить доменное имя». Осталось только указать бывший домен и подтвердить свои действия.

Загрузка файлов на новый хостинг

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

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

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

Создание базы данных

На этом этапе нам необходимо создать базу данных на выбранном сервере. Как это сделать? Ничего сложного в этом нет. Переходим к панели управления и выбираем пункт «Базы данных». Далее нажимаем на кнопку «Создать базу данных». В новой вкладке вводим пароль и имя для новой БД.

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

Импортирование данных в БД

Теперь в новую БД необходимо перенести информацию, которую мы сохранили на компьютере в самом начале нашего пути.

Переходим в phpMyAdmin на выбранном хостинге. Далее заходим в раздел «Базы данных». Теперь нужно посмотреть информацию о вашей базе данных. Для этого нужно нажать на кнопку «Информация о логине».

На новой странице откроются полезные параметры, которые нужно сохранить для подключения базы данных к нашему сайту. Но сначала нужно войти в phpMyAdmin. Нажав на соответствующую кнопку, нужно ввести пароль от БД.

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

Чтобы произвести перенос на другой хостинг WordPress сайта, нужно зайти в выбранную базу данных.

На верхней панели нужно нажать на кнопку «Импорт».

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

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

Настраиваем подключение сайта к БД

На этом этапе нам необходимо настроить подключение базы данных к сайту или блогу на WordPress. Эти настройки хранятся в файле под названием wp-config.php.

Этот файл можно отыскать в корне самого сайта. Далее нужно найти этот документ и открыть его. Переходим к строкам, где в функции define отображены параметры: DB_NAME - имя базы данных, DB_USER - имя пользователя БД, DB_PASSWORD - пароль, DB_HOST - сервер базы данных.

Чтобы перенести на другой хостинг WordPress блог, нужно эти данные заполнить из окна, которое мы открывали ранее - «Информация о логине». Во втором параметре функции define необходимо указать необходимую информацию.

Проверяем качество переноса сайта или блога

Уже практически все сделано. Остается всего несколько действий. На предпоследнем этапе вам необходимо проверить качество своей работы. А как это сделать? Так как доменное имя еще не указывает на наш сайт, нужно использовать технический домен или временный URL (это одно и то же, название зависит от того, на каком хостинге вы пытаетесь проверить свой сайт или блог).

Чтобы перенести на другой хостинг WordPress блог, нужно узнать техническое доменное имя. Для этого необходимо перейти к разделу «Домены». Далее выбираем нужное название и кликаем по кнопке «Инструменты». В новом окне вы сможете увидеть ссылку на временный URL для своего блога. Кликаем по ней и проверяем корректность работы своего сайта.

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

Прописываем DNS

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

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

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

Возможные ошибки и их решения

1. Если у вас появляется сообщение, что не удается соединиться с БД, то нужно проверить изменение в файле под названием wp-config.php. Проблема состоит в некорректности введенных данных в этот файл.

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

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

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

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

Услуги по переносу сайта

Если у вас возникают проблемы при переносе сайта и вы сами не в состоянии их исправить, то можно воспользоваться помощью профессионалов. В интернете есть множество различных сервисов, которые предоставляют эти услуги. Легкий перенос WordPress на другой хостинг обойдется вам в пределах от 1000 до 2000 рублей. Они обещают перенести сайт на другой хостинг в течение одного дня.

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

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

Заключение

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

Сегодня я расскажу о переносе сайта на WordPress с хостинга на хостинг или c хостинга на денвер, а так же на новый домен или в другую папку.
Содержание статьи:

Почему возникает проблема переноса WordPress сайта

Рано или поздно каждому из нас приходится столкнуться с переездом, для этого существует ряд причин. Самая распространенная из них – недовольства хостингом, когда терпеть уже нет сил, начинаешь думать о смене хостинг-провайдера. Хотя в этом случае проще оставить заявку в техподдержку на перенос вашего сайта (любой приличный хостинг предоставляет такую услугу бесплатно). Мне приходилось менять хостинг сотню раз, пока однажды, наконец, не повезло, теперь я пользуюсь хостингом и вам советую.

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

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

Перенос WordPress на другой хостинг

1. Скачиваем файлы сайта и базу данных со старого хостинга

Способ №1:

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

Чтобы попасть в эту папку, можно зайти по FTP (я использую программы Total Commander или File Zilla) или через файловый менеджер хостинга (этот способ удобнее, как мне кажется). Скачайте полученные архивы к себе на компьютер. Распакуйте базу данных.

Если по какой-то причине вы не смогли сделать бэкапы, существует второй способ:

Далее зайдите в раздел управления базами данных вашего хостинга, выберите phpMyAdmin. В колонке слева выберите название вашей базы данных из списка. Перейдите на вкладку Экспорт (Export) и щелкните Ок(Go). Сохраните сгенерированный файл.

Итак, дамп БД в виде файла с расширением.sql и архив со всеми файлами блога находятся на нашем компьютере и готовы к переносу на другой хостинг.

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

В разделе «базы данных» нового хостинга добавьте нового пользователя БД и новую БД, придумайте ей пароль и запомните его. У меня это выглядит так:

Внимание! Если вы так же меняете доменное имя, то сейчас необходимо выполнить пункт « », затем вернитесь и продолжайте по порядку.

Откройте phpMyAdmin, найдите в списке слева вашу базу данных, перейдите на вкладку Импорт (Import). Закачайте ранее скачанный на компьютер дамп базы данных с разрешением.sql и нажмите ОК (Go).

Теперь залейте архив с файлами на ftp и разархивируйте его. Следите, чтобы в итоге файлы оказались в правильной папке, на моем хостинге это папка public_html, так же она может называться httpdocs, www или иначе, в зависимости от хостинга. Проверьте, чтобы эта папка была пустой, прежде чем распаковывать в нее архив.

3.Настройка соединения с базой и установка прав

Найдите в корне сайта файл wp-config.php. Поменяйте в нем данные подключения к базе данных на новые:

/** Имя базы данных для WordPress */ define("DB_NAME", "имя_вашей_базы_данных"); /** MySQL имя пользователя */ define("DB_USER", "имя_пользователя_базы_данных"); /** MySQL пароль базы данных */ define("DB_PASSWORD", "пароль_к_базе_данных");

Установите права (атрибуты) 777 для папки wp-content/uploads и всех вложенных папок. Это делается по ftp или в файловом менеджере:

Привязка вашего домена к новому хостингу

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

  • Узнайте у нового хостера его DNS сервера. Обычно они написаны в письме, отправленном вам на почту при регистрации хостинга.
  • Зайдите в личный кабинет своего регистратора доменов — сайт, где вы покупали домен. Я пользуюсь 2domains.ru и расскажу, как это делается там. Найдите раздел «Управление DNS-серверами» и измените DNS-сервера на новые:

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

Если вы не переезжаете на новый домен, для вас урок окончен. Если сайт не заработал, посмотрите .

Перенос WordPress на другой домен, папку

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

1. Работа с базой данных

Когда вы скачали дамп базы данных со старого хостинга, надо открыть ее в редакторе (я пользуюсь Dreamweaver) и заменить все упоминания о старом домене на новые:

Есть еще один способ: когда вы импортируете базу данных, зайдите на вкладку SQL совершите три запроса:

UPDATE wp_options SET option_value = REPLACE (option_value, "https://old_domain.ru", "https://new_domain.ru") WHERE option_name = "home" OR option_name = "siteurl";

UPDATE wp_posts SET guid = REPLACE (guid, "https://old_domain.ru", "https://new_domain.ru");

UPDATE wp_posts SET post_content = REPLACE (post_content, "https://old_domain.ru","https://new_domain.ru");

2. Изменения в.htacces и robots.txt

Найдите такие файлы в корневом каталоге сайта, найдите в них упоминания имени вашего старого домена и замените на новое.

3. Изменения в файлах сайта

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

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

Перенос сайта в другую папку

Если вам нужно перенести блог в другую папку (например, domain.ru/blog), внесите следующие изменения в.htaccess (изменения выделены жирным):

# BEGIN WordPress
RewriteEngine On
RewriteBase /blog /
RewriteRule ^index\.php$ — [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog /index.php [L]
# END WordPress

Возможные ошибки, связанные с переносом WordPress блога

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

  1. Error establishing a database connection. Такая ошибка случается, если неверно введены данные вфайле wp-config.php.
  2. Открылась страница с установкой WordPress. Подобная ситуация могла возникнуть из-за ошибки импорта базы данных. Попробуйте удалить все таблицы базы и заново импортировать дамп.
  3. Вы видите страницу вашего хостинг-провайдера с приветствием. Причиной может стать то, что вы не очистили папку public_html (httpdocs), прежде чем распаковать в нее архив. Удалите файл index.html.
  4. Forbidden. You don"t have permission to access / on this server. Возможно, вы залили файлы сайта в неправильную папку.

Каждый веб-разработчик регулярно сталкивается с задачей миграции. Сюда входят и развёртывание (deploy) локальной версии на удалённом сервере, и перенос работающего сайта с одного сервера на другой. Некоторые печатные издания для программистов называются «Cookbook» – что буквально значит «книга рецептов». Рецептов множество, какой из них лучший - дело вкуса. В этом материале автор расскажет о том, какую технологию переноса типичного сайта на WordPress он считает оптимальной, и почему.

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

Резервное копирование данных

С технической точки зрения нам предстоит сделать копии двух составляющих сайта:
  • Файловой системы
  • Базы данных
Каждый веб-разработчик должен заботиться о сохранности данных веб-сайта. Поэтому, как правило, после того как рабочая версия развёрнута на удалённом сервере, разработчик сайта настраивает резервное копирование данных или «бэкап» (от англ. «backup copy», резервная копия).

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

В чём главная цель разработчика при переносе сайта с одного сервера на другой? Ничего не потерять. То есть на новом месте сайт должен быть полностью идентичен тому же сайту на старом.

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

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

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

Режим обслуживания

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

Как принудительно перевести в него сайт?

Для этого необходимо в корне сайта создать файл под названием.maintenance и разместить в нём следующий PHP-код:

Результат:

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

Однако, если вы хотите сделать страницу более привлекательной, можете создать в папке wp-content файл maintenance.php , который будет загружаться вместо исходного текста. В нём вы можете сверстать какую угодно картинку для поджидающего окончания работ пользователя.

Также можно порекомендовать специальный плагин , которые можно использовать в тех же целях:

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

Резервная копия базы данных

Способов создания резервной копии базы данных WordPress существует несколько:
  • При помощи плагинов WP-DB-Backup , WP Database Backup и прочих.
  • При помощи браузерной утилиты phpMyAdmin
  • При помощи консоли сервера
  • При помощи панели хостинга
С целью экономии места в посте не буду рассказывать про первые два способа, они достаточно тривиальны.

Если у вас есть доступ к консоли сервера, и вы умеете пользоваться терминалом - это заметно ускорит работу.

Прежде всего потому, что создании резервной копии выполняется одной единственной командой:

Mysqldump -u[пользователь] -p[пароль] [имя_базы_данных] > [имя_файла_резервной_копии].sql

По-хорошему будет заархивировать дамп базы на ходу:

Mysqldump -u[пользователь] -p[пароль] [имя_базы_данных] | gzip >[имя_файла_резервной_копии].sql.gz

Текстовые файлы, коим является дамп базы, архивируются наилучшим образом. Размер архива может быть значительно ниже размера дампа базы. Это важно при переносе, т.к. 100Мб перенести куда быстрее, чем 1Гб, например.

Некоторые хостинг-компании предоставляют возможность архивирования данных сайта через панель управления услугами:


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

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

Резервная копия файлов

Файловая система WordPress обычно выглядит следующим образом (без поддиректорий и их содержимого):
├── index.php ├── license.txt ├── readme.html ├── wp-activate.php ├── wp-admin ├── wp-blog-header.php ├── wp-comments-post.php ├── wp-config-sample.php ├── wp-config.php ├── wp-content ├── wp-cron.php ├── wp-includes ├── wp-links-opml.php ├── wp-load.php ├── wp-login.php ├── wp-mail.php ├── wp-settings.php ├── wp-signup.php ├── wp-trackback.php └── xmlrpc.php

В принципе, больше всего нас интересуют папка wp-content и конфигурационный файл wp-config.php .

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

Важно: самый быстрый способ переноса файлов - создание архива, перенос архива и последующая разархивация на конечном сервере.

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

Представьте себе перенос по FTP тысячи или даже нескольких тысяч маленьких файлов. Для переноса каждого из них требуется сначала установить, а потом разорвать соединение. В итоге процесс получается долгим и иногда случается что-либо потерять в пути. Тем более, когда файлы переносятся сначала на локальный компьютер, а потом уже - на новый удалённый сервер.

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

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

Восстановление данных

Итак, архив файлов сайта и дамп базы данных перенесены на новый сервер.

Воссоздание файловой структуры

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

Чтобы восстановить исходную структуру и не напортачить с папками, необходимо руководствоваться следующим правилом:

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

Например, если вы сжимали сайт при помощи консольного архиватора из корня сайта zip -r "full-backup.zip" * , то и распаковывать на новом сервере его необходимо также в корне сайта unzip full-backup.zip .

Обратите внимание , что невидимые файлы, коим является.htaccess не всегда архивируются вместе с остальными. Поэтому, если на вашем новом сайте не работают «красивые адреса», первым делом проверьте, перенесли ли вы.htaccess в корень сайта.

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

Воссоздание базы данных

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

Если же её ещё нет, то создать новую базы данных можно разными способами:

  • Через веб-интерфейс при помощи утилиты phpMyAdmin
  • Через панель управления хостингом
  • Через консоль сервера следующей командой: mysql -u[имя_пользователя] -p; # после ввода пароля вы войдете в режим командной строки MySQL mysql: CREATE DATABASE [имя_базы_данных] CHARACTER SET utf8 COLLATE utf8_general_ci; CHARACTER SET utf8 COLLATE utf8_general_ci; CHARACTER SET utf8 COLLATE utf8_general_ci; GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ALTER ON[имя_базы_данных] .* TO [имя_пользователя]@localhost IDENTIFIED BY "[пароль]";
В результате мы должны иметь на руках:
  • Имя базы данных
  • Имя пользователя
  • Пароль
В некоторых случаях, когда база данных находится на другом сервере, нам необходимо ещё знать адрес хоста (обычно - localhost , если на той же машине).

Используя эти данные мы должны импортировать наш дамп базы данных.

Опять-таки, сделать это мы можем теми же средствами.

В phpMyAdmin выбираем базу данных, вкладку «Импорт», выбираем файл дампа и отправляем форму запроса.

Если вы работаете через консоль, используйте команду mysql -u[имя_пользователя] -p[пароль] [имя_базы_данных] < [дамп_базы_данных].sql .

В случае, если дамп базы данных был заархивинован: gunzip < [дамп_базы_данных].sql.gz |mysql -u[имя_пользователя] -p[пароль] [имя_базы_данных] .

Не забудьте удалить дамп базы данных с сервера или перенести его в безопасное место, в случае, если он там был.

Настройка файла конфигурации

Теперь необходимо открыть в редакторе файл wp-config.php и установить соответствующие настройки для соединения с новой базой данных:

Не забудьте удалить файл.maintenance из корневой папки сайта.

Остаётся только проверить работоспособность сайта!

Заключение

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

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

P.S. Важное дополнение в комментарии от nik_vr :

При переносе с localhost"а на реальный сервер нельзя забывать про адрес сайта. Смена домена с одновременным переносом по вашей инструкции сделает сайт абсолютно неработоспособным. По-этому в инструкцию стоит добавить ещё один шаг (актуальный при смене домена, в т.ч. - при переносе с локального сервера на боевой). Для примера будем считать, что сайд переносится с домена mysite.local на домен mysite.ru .

В сохранённом дампе базы данных WordPress ищем все вхождения mysite.local и заменяем на mysite.ru . Можно это сделать в любом нормальном текстовом редакторе (например, Notepad++). После замены аккуратно сохраняем БД, не забывая о кодировке (в случае с более или менее современными версиями WordPress нужна кодировка UTF-8 без BOM).

После импорта базы данных можно выполнить следующую MySQL-команду:

UPDATE wp_options SET option_value = "http://mysite.ru" WHERE option_value = "http://mysite.local";