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

06.03.2018

Простая инструкция, как перенести сайт на CMS WordPress с одного хостинга на другой.

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

Простой пошаговый план переноса сайта на другой хостинг:

  • сделать архив всех файлов кроме wp-config.php;
  • сделать бекап базы данных сайта;
  • скопировать файл wp-config.php и прописать в нем доступы к новой базе;
  • распаковать архив с файлами на новом хостинге;
  • залить новый wp-config.php на новый хостинг;
  • импортировать базу данных на новый хостинг;
  • если имя домена меняется, тогда нужно в базе данных поменять имя домена на новое — через ctrl+H поиск и замена без http старого домена oldname.ua на новый newname.ua (кстати Sublime на этой операции у меня зависает, поэтому для работы с базами данных у меня есть Notepad);
  • Файлы со старого хостинга и базу данных нельзя удалять некоторое время, пока не обновятся NS домена на новом хостинге, если вы хотите, чтобы сайт был всегда доступен. Да и на первое время это будет ваш 100% рабочий бекап, который в случае чего можно взять и перенести на любой другой хостинг.

Самые частые проблемы при переносе сайта на другой хостинг:

  • Error establishing a database connection в WordPress — ошибка соединения с базой данных, это значит, что в файле wp-config.php вы неправильно указали данные для подключения к базе данных. На разных хостингах разные сервера базы данных — MySQL hostname, не везде это localhost, будьте внимательны. В конфиге всего 4 изменяемых параметра: имя базы данных, имя пользователя базы данных, пароль пользователя и хост MySQL, поэтому нужно просто внимательно изменить эти параметры со старого хостинга на новый.
  • При переносе сайта с одного домена на другой может возникнуть проблема, что при переходе по ссылкам, вас перекинет на старый домен и вы даже не заметите этого, а когда заметите, то уже и не вспомните с какой страницы и почему вас перекинуло на старый домен. В 99% эта проблема возникает из-за того, что при переносе базы данных вы забыли изменить имя старого домена на новый. В сети много советов по изменению имени домена через базу данных в таблице wp_options, изменяя домен в полях siteurl и home. Это тупо и не правильно. Потому что таким образом не изменятся домены внутри статей, во внутренней перелинковке, в кастомных ссылках в меню, в виджетах. Правильный способ (хотя может и не самый правильный, но 100% рабочий) — это поиск и замена через ctrl+H без http старого домена oldname.ua на новый newname.ua.
  • Еще одна распространенная проблема при переносе сайта на другой хостинг или при восстановлении сайта из архива бекапа — на сайте не отображается часть картинок. Проблема на самом деле очень частая, особенно, в рунете. Возникает она из-за того, что неопытные пользователи загружают свои картинки на сайт как есть, их не обрезают, не обрабатывают, не переименовывают. По итогу, на сайт загружаются картинки с названиями на кириллице или с пробелами, или со спецсимволами в именах. По началу никаких проблем не возникает, картинки нормально отображаются, открываются, но вот при архивировании все кириллические имена трансформируются в непонятный набор символов, и старые ссылки на изображения уже не сработают. Может быть есть какие-то решения данной проблемы, но я знаю только один вариант — это перенос папки uploads или другого каталога с изображениями напрямую по FTP без архивирования, тогда все имена картинок сохранятся нормально, но если у вас не осталось этих каталогов до архивирования, тогда не знаю, чем помочь… Чтобы избежать данной проблемы настойчиво рекомендую всем ставить плагин Cyr3Lat, он не только создает транслитерацию для ЧПУ, но и при загрузке файлов на сайт через админку делает транслитерацию их имен, и загружает на сайт файлы уже на латинице без спецсимволов.

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

Полезная инфа:

Оставить комментарий