Перенос WordPress на другой хостинг
Вопросы о переносе блога на WordPress на другой хостинг систематически возникают, поэтому я решил изложить основной материал отдельной заметкой. Правки и дополнения, думаю, еще последуют, т.к. есть много нюансов, но в целом представление “за что хвататься” будет:
Перенести WordPress-блог на другой хостинг, не меняя доменного имени легко.
Первое - надо скопировать все файлы себе локально, чтобы было, и чтобы можно было вносить изменения.
Второе - сделать дамп базы данных. Это делается либо через специализированные плагины, такие как WordPress Database Backup, или через phpMyAdmin, который, по-моему, есть вообще на всех хостингах. Или вообще через командную строку. Но если Вы в состоянии это сделать через консоль, то Вы не тот человек, которому нужна инструкция по переносу. :)
Как это сделать с помощью phpMyAdmin можно прочитать на странице кодекса. Те кто не знают английского все поймут по картинкам. Последний вариант - попросить хостера сделать дамп базы и прислать его. Мне кажется не откажут. Хотя, возможно, это мы своих клиентов балуем. ;)
Опциональный шаг, иногда помогающий админам при развертывании дампа на новом хостинге - можно в phpMyAdmin тыкнуть в закладку SQL, и ввести вот такой запрос: SHOW VARIABLES LIKE ‘character_set%’;
а вывод его записать. Это позволит узнать, какие кодировки использовались на старом MySQL-сервере.
Третье - внести изменения в файлик wp-config.php, и залить все на новый сервер.
Четвертое - зависит от того, как Вы решали пункт два. Если Вам понравилось ковырять phpMyAdmin, то Вы можете развернуть базу с его помощью. О том, как это сделать, можно прочитать на другой странице кодекса. Альтернатива - отдать базу инженерам нового хостера и попросить их ее развернуть. Им как раз можно сообщить данные, полученные на опциональном шаге, и попросить, чтобы теперь все данные в базе и сама база, и вообще все что можно, были в utf8. Вариант их ответа сильно зависит от воспитания, и того, что Вы получили на опциональном шаге.
По-идее, после всех этих манипуляций счастливый блоговладелец увидит свой блог на новом хостинге. На всякий случай рекомендуется это все делать пока есть доступ к старому хостеру. :) В случае, если Вы увидели свой блог, но на нем все в вопросиках, то рекомендую подправить файлик wp-db.php так, как написал Slaff.
(Маленький tip: Выбирайте новый хостинг, где версия MySQL не меньше 4.1. Сэкономите много нервов и у Вас будет нормально работать поиск.)
Да, кстати, есть второй метод переноса, если все вышенаписанное Вас не заинтересовало, расстроило, перепугало, или просто вызвало тоску - воспользоваться услугами BlogService. Это будет самый приятный переезд в Вашей жизни. :)
Дополнения к материалу приветствуются.
Comments
12 Responses to “Перенос WordPress на другой хостинг”
Leave a Reply
А знаете ли вы способ как размножать блоги в пределах одного хостинга? т.е. у меня есть сервер, на него повешено с 10-ок доменных имен, я ставлю один блог, настраиваю его (опции, дизайн, бла-бла-бла) и потом хочу путем простого копирования файлов, баз и подмены имен и путей в конфигах получить 10 блогов - как? тупое копирование не позволило это совершить, наверно есть тонкости
Кроме подмены имен и путей в конфигах еще надо подменить имена и пути в базе. Самое главное - url блога в базе. Скорей всего не получилось именно из-за него.
И плагины желательно вырубать перед переносом. Если выключить плагины вовремя не удалось, а проблема явно в них, то можно просто убрать их на время из папки plugins, запустить блог, а потом вернуть на место и активировать по-одному.
Не, эти штуки я кажется менял, у меня даже начинал работать блог на новом месте, но в админке дальше первой страницы не пускало
Админка не пускает обычно с сообщением о “sending referrers”. Как правило это именно из-за изменения url самого блога.
Возможно могут быть и другие варианты, но надо знать, на что именно он ругается, не пуская дальше первой страницы.
Нужно менять пути в 2х полях одной таблицы в БД,
Это можно сделать через тот же пхпмайадмин, а можно написать небольшой скриптик и запускать его перед запуском копии блога на новом домене.
Но всё-таки надежнее всего:
* отключить плагины
* раскопировать директорию блога
* подготовить 10 конфигов (с именем базы, логином и пассом)
* подготовить 1 sql запрос для смены значений в этих 2х полях (это очень простой запрос, если надо помогу написать его)
* залить конфиги, дампы базы
* войти в каждую базу и выполнить sql-запрос
Махинации с файлами лучше всего делать через shell, потому что ошибки плагинов могут возникать из-за неправильных разрешений на файлы и папки.
Так будет надежнее всего, мне кажется. Пускай немного больше времени займет и ручками, но зато контроль тотальный.
В заметке так и чувствуется завлекалово в… ;)
slaff, подскажи, в каких таблицах менять пути. Я как-то переносил блог, возникла проблема с URL (все пути указаны с абсолютным URL, в т.ч. и записи). Причём точно где-то базе они забиты, но непонятно где.
2saahov: Где? Я вроде ни словом не обмолвился! :)))
Таблица _options. Поля:
id 1 - siteurl
id 46 - home
Там урл полный блога поставить и не забыть прописать данные доступа к этой базе в wp-config.php.
Если возникнут проблемы, можно ли к Вам обратиться ща помощью?
За отдельную плату естественно.
2Антон: Конечно можно, без проблем!
Кстати, если потребуется помощь теоретическая - захотите спросить или надо будет подсказать что-то - спрашивайте, поможем бесплатно. ;)
по моему перенос очень просто и понятен каждому
Советы для домохозяек?