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

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

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

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

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

Итак, способы переноса WordPress-сайта на другой хостинг:

  1. Перенести сайт вручную. Подразумевается следующее:
    • Сначала необходимо скопировать все файлы с фтп-сервера со старого хостинг на новый. Данный процесс упростит возможность сжатия всех файлов в один архив, который закачивается и распаковывается на новом хостинге. Любой современный хостер должен поддерживать работу с архивами через панель управления хостингом. Иначе пофайловая загрузка займет гораздо больше времени (в папке с Вордпрессом очень много файлов).

      Другой момент здесь – возможность копирования файлов напрямую с одного фтп-сервера на другой. Я пока с данной возможностью не встречался, но, насколько мне известно, это есть. Если такой возможности нет, то процесс переноса файлов весьма неудобен – сначала их необходимо скачать на свой компьютер (конечно, если нет локальной копии), а после этого закачивать на новый хостинг.

      Если новый хостер не “умеет” распаковывать архивы, то Вам поможет статья “Как распаковать ZIP архив на FTP-сервере

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

    • Перенести дамп базы данных. Сначала необходимо экспортировать дамп БД через phpMyAdmin, используя соответствующий пункт меню. После чего импортировать сей дамп через тот же инструмент на новом хостинге. Процесс, вроде бы, прост, но в ряде случаев, особенно при загрузке дампов большого размера, могут возникнуть трудности с импортом – появляется либо пустая страница, либо ошибка типа “временной лимит превышен”.
  2. Попросить нового хостера перенести все содержимое со старого хостинга. Суть проста – необходимо предоставить саппорту хостера все необходимые данные от старого хостинг-аккаунта и он (саппорт) все действия по переносу WordPress-сайта выполнит за Вас. Адекватный хостинг-провайдер в большинстве случаев не откажет Вам в этом, ведь он должен оставить хорошее впечатление о качестве своих услуг.
  3. Перенести сайт с помощью SSH. Самый простой и интересный способ. Используя этот вариант, процесс переноса занимает у меня от силы 15-20 минут. Практически все автоматизировано, никаких лишних, так сказать, телодвижений. Главное – у Вас должен быть shell-доступ к своему аккаунту и на том, и на другом хостинге. Это максимально упростит перенос WordPress-сайта.

    Как в таком случае выглядит последовательность действий:

    • Через файловый менеджер в панели управления хостинга архивируем весь сайт.
    • Заходим через SSH-клиент (мне очень понравилась программа WinSCP) в аккаунт старого хостера и создаем дамп нужной БД следующей командой:
      mysqldump -u USERNAME -pPASSWORD BD_NAME > dump.sql

      где:

      USERNAME – имя пользователя БД,
      PASSWORD – пароль пользователя БД,
      BD_NAME – название БД.

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

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

    • Заходим через SSH-клиент в нужную папку аккаунта нового хостинга и скачиваем только что созданные архивы сайта и БД следующими командами:
      wget http://site.name/site-archive.zip
      wget http://site.name/dump.zip

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

    • Распаковываем скачанные архивы в панели управления нового хостера.
    • Импортируем дамп в базу данных следующей командой:
      mysql -u USERNAME -pPASSWORD -D BD_NAME < dump.sql

      где USERNAME, PASSWORD и BD_NAME – соответствующие параметры БД на новом хостинге (естественно, она должна быть создана заранее).

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

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

На этом все. Надеюсь, что данная статья кому-то окажется полезной.

Комментарии (71)

  1. 29 декабря 2008 г. в 14:00

    У меня WP 2.2.3 – пытаюсь перенести всякими разными способами, но ничего не помогает. Максимум чего добивался – получал блог без текстов – т.е. вижу даты постов и кол-во каментов, кол-во тем в разделах, а самих текстов постов. каментов и разделов нет. Теги (плагин simple tags) тоже потеряны. Как быть – не представляю. :(

  2. Ekaterina
    26 января 2009 г. в 14:58

    Друзья, сама промучилась с этими кодировками, перечитала кучу всяких статей, сообщений на форумах и т.п. Как я понимаю, кракозябры при переносе ооочень распространенная проблема! Можно конечно чахнуть над базами данных не один день, править их, отправлять sql запросы и т.п. Но все гениальное действительно просто) Все, что вам нужно сделать, чтобы решить все проблемы – это перенести все файлы на новый хостинг, создать абсолютно новую базу данных, установить за 5 мин вордпресс 2.7 иии… там есть замечательная функция в разделе “инструменты” импорт данных (конечно же вам надо будет сделать перед этим экспорт со старого сайта, но там уже все понятно! главное, чтобы как на старом, так и на новом сайте стояли самые последние версии вордпресс! полный автомат) и тогда у вас все аккуратненько так перетащится без кракозябр и прочих чудовищ на нове место)) ура!

    если вдруг вопросы, хотя их не должно быть, пишите на kurasheva@me.com

  3. coolweb
    6 марта 2009 г. в 02:50

    После переноса не работают E-mail уведомления, в чем может быть причина?

    1. 6 марта 2009 г. в 12:11 / ответ на коммент coolweb

      Как вариант – IP-адреса хостера находятся в черных списках и почтовые сервисы переносят письма в спам.

  4. Neelix
    7 марта 2009 г. в 20:42

    Добрый день! Меня интересует такой вопрос: заметят ли вообще посиковые машины, что сайт перенесен на другой хостинг? И отразится ли это на его позициях в поиске?

    1. 9 марта 2009 г. в 14:01 / ответ на коммент Neelix

      То, что перенесен, заметят, т.к. сменится IP-адрес сайта. А на позиции по идее перенос никак не должен отразиться.

  5. 17 марта 2009 г. в 01:09

    Доброе,
    Подскажите пожалуйста, кто в курсе – переношу WP 2.7.1. Базу, файлы перенес, wp-config.php подправил.

    Но при ни одна страница не отображается – пустота!

    WP пишет какие нить логи? В чем может быть трабл. Спасибо.

  6. Владимир
    17 апреля 2009 г. в 00:56

    после перезда на новый хост возникли проблемы: страницы открывающиеся через ссылку открываются не совсем правильно. Правая колонка спускается и наежает на левую. Смещаются таблицы. Через админку данная проблема не наблюдается. Что посоветуту по данному вопросу.

  7. Андрей
    22 апреля 2009 г. в 23:16

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

  8. Kostya
    19 мая 2009 г. в 21:33

    у меня проблема
    сайт перенёс с хостинга на локалхост
    отображается весь сайт посты рубрики ссылки .. всё правильно перенеслось
    только вот сам контент … сам текст в постах … пропал

    на мой взгляд всё перебпробовал … может кто с таким сталкивался и знает как решить?
    спасибо

  9. Everouge
    13 марта 2010 г. в 17:20

    Спасибо за полезные инструкции. Перенес три домена с помощью вашего блога)

  10. Ефим
    26 апреля 2010 г. в 11:02

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

    1. Не загружаются фотографии в NextGEN Gallery. Даже если загрузить фото в папку галерии и нажать кнопку «Scan folder for new images», то не работает, выдает пустую страницу только с левым меню.
    2. Не получается установить и обновить плагины. Тоже выдает пустую страницу только с левым меню.

  11. Тима
    25 июня 2010 г. в 01:35

    Спасибо, интересная статья!

  12. motorfan
    20 июля 2010 г. в 19:40

    У меня такая проблема.
    У меня есть блог и я хочу его перенести на новый хостинг и с новым доменом.
    На хостинге уже все готово. Я установил вордпресс и создал БД. Импортировал все таблицы со старого блога в пустную новую БД.
    Теперь когда я ввожу mesite.pp.ua/wp-admin меня перебьрасывает на страницу входа старой панели управления mysite.ax3.net/wp-admin.
    Вот такой прикол. Как быть?

    1. 21 июля 2010 г. в 08:45 / ответ на коммент motorfan

      Почитайте еще эту статью – http://dimox.name/moving-the-site-on-new-domain/

  13. Елена Окорокова
    9 сентября 2010 г. в 22:41

    спасибо за статью. мне как раз это нужно.

  14. 24 марта 2011 г. в 10:42

    А про обычные сайты зря не написали, общую тему надо было с подразделами

  15. Feel
    19 июля 2011 г. в 13:37

    Спасибо за пост!
    Очень помог

  16. Sergey
    16 марта 2012 г. в 17:33

    Все отлично, третий метод рабочий

  17. ProGrafika
    6 июля 2012 г. в 22:00

    Все перенес в базе старых урлов не осталось но картинки по прежнему со старыми урлами. Где может быть проблема. Кешь не вклбчон.

    1. Кроме БД и кэша других вариантов не вижу.

  18. Владимир
    13 июля 2012 г. в 00:23

    Огромное Вам спасибо. Вы мне очень помогли. Я всегда хотел узнать, как импортировать базу данных с помощью Secure Shell (SSH), постоянно сталкивался с ошибками при импорте напрямую через phpMyAdmin, а тут Вы так легко всё объяснили. Я спокойно смог перенести сайт на DLE от одного хостера к другому, экспортировал старую базу благодаря Вашей статье, и легко импортировал в новую. Да и эта программа WinSCP просто супер, так легко с ней работать.

  19. Bodya
    7 февраля 2013 г. в 12:38

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

  20. 12 октября 2013 г. в 11:51

    У меня при переносе worpdress с одного хостинга на другой выдало 500 Internal Server Error.
    Подчистил файл .htaccess
    все заработало

    # BEGIN WordPress

    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]

    # END WordPress

Ваш комментарий

Жирный текст

Ссылка

Цитата

Внутристрочный код

CSS-код

HTML-код

JavaScript-код

PHP-код