Как перенести сайт WordPress на хостинг, советы по переносу WordPress

Как перенести сайт Wordpress на хостинг, советы по переносу Wordpress Хостинг

Использование подключаемого модуля клонирования

Другой метод переноса сайта WordPress — использование плагина клонирования.

В каталоге плагинов WordPress есть сотни скриптов клонирования PHP на выбор.

Однако я бы рекомендовал использовать плагин «All-in-One WP Migration», поскольку он прост в использовании и предоставляет все необходимые инструменты миграции, чтобы упростить процесс.

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

Следующие шаги покажут вам, как перенести веб-сайт WordPress с помощью плагина миграции.

1. Откройте панель администратора сайта, который вы хотите перенести, и перейдите во вкладку «All-in-One WP Migration — Export».

2. Нажмите «Экспорт в» и выберите в раскрывающемся меню пункт «Файл».

3. Подождите, пока плагин завершит получение файлов вашего сайта. После завершения процесса загрузите файл резервной копии в формате «.wpress» из всплывающего окна.

4. Откройте панель администратора WordPress в своей новой учетной записи хостинга и перейдите к «All-in-One WP Migration — Import».

5. Нажмите «Импортировать из» и выберите «Файл». Затем найдите файлы, которые вы экспортировали. Имейте в виду, что максимальный размер загружаемого файла составляет 128 МБ.

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

6. По завершении процесса нажмите «Готово».

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

  1. Перейдите к «All-in-One WP Migration — Export» на старом сервере и сгенерируйте файл «.wpress»;
  2. Войдите через FTP и загрузите файл «.wpress» в папку «wp-content / ai1wm-backups» в папке плагина «All-In-One WP Migration»;
  3. Перейдите в панель администратора WordPress вашего нового сервера, зайдите в «All-In-One WP Migration — Backups». Файл «.wpress» должен появиться там.
  4. Щелкните значок «Восстановить» рядом с файлом «.wpress». Нажмите «Продолжить», чтобы начать процесс миграции.

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

Вам нужно дважды изменить структуру, так как она восстановит файл «.htaccess».

  1. В меню боковой панели WordPress выберите «Настройки — Постоянные ссылки»;
  2. Выберите новую структуру и нажмите «Сохранить изменения». Если вы используете настраиваемую структуру, обязательно сначала скопируйте ее;
  3. Обновите постоянные ссылки страницы параметров настройки и выберите исходную структуру. Когда закончите, нажмите «Сохранить изменения».

Служба резервного копирования веб-хостинга

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

Некоторые хостинг-провайдеры, такие как TimeWeb, периодически создают резервные копии.

Вы можете использовать эти резервные копии для переноса вашего сайта WordPress на новый сервер.

Поскольку многие хостинг-провайдеры используют cPanel, выполните следующие действия для резервного копирования вашего сайта WordPress с помощью этой опции.

1. Перейдите в «Файлы — Мастер резервного копирования» из вашей cPanel.

2. В меню мастера резервного копирования выберите «Резервное копирование — Полное резервное копирование».

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

3. Установите предпочтительное место назначения резервной копии — в этом руководстве мы выберем домашний каталог.

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

4. Щелкните «Создать резервную копию», чтобы начать процесс.

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

  1. Перейдите в «Файлы — Мастер резервного копирования» на панели управления вашей новой учетной записи хостинга;
  2. В меню мастера резервного копирования выберите «Восстановить — Домашний каталог»;
  3. Выберите созданный вами резервный ZIP-файл и нажмите «Загрузить».

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

Это можно сделать через диспетчер файлов на панели управления или FTP-клиент.

Убедитесь, что все файлы сайта в папке «public_html» старого хоста перемещены в папку «public_html» нового хоста.

BlogVault

«BlogVault» — это надежное решение для резервного копирования и промежуточного хранения, которое поставляется с множеством дополнительных инструментов.

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

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

Перенести ваш сайт WordPress очень просто, поскольку «BlogVault» поддерживает более 5000 веб-хостов по всему миру.

Помимо гарантии нулевого времени простоя, плагин может переписать URL-адреса вашего веб-сайта и помочь вам перейти на новый домен, DNS или сервер.

Кроме того, он предоставляет промежуточную среду, автономное восстановление сайта и зашифрованное внешнее хранилище.

«BlogVault» поставляется с бесплатной и премиальной версией — последняя стоит от 89 до 249 долларов в год.

Если вы используете сайт WooCommerce, подумайте о переходе на расширенный план, поскольку он предоставляет определенные резервные копии WooCommerce.

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

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

Backupbuddy

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

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

Лицензия разработчика также включает дополнительные функции, среди которых встроенная функциональность переноса WordPress, клонирование WordPress, функция  «развертывание и разработка», которая позволяет применить изменения к существующему сайту из среды развертывания.

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

  • Бэкапы по расписанию. В том числе в облако.
  • Простое восстановление из бэкапа в режиме реального времени на основе облачного хранения
  • Восстановление отдельных файлов
  • Откат базы данных
  • Удобные средства быстрой миграции в несколько кликов
  • Улучшенные функции безопасности
  • Детальная информация о занимаемом месте на хостинге и всех его параметрах

Цена одной лицензии начинается от 80 долларов за один год обновлений и поддержки. Либо вы можете заплатить 297 долларов за постоянные обновления в течение всей жизни  и получить лицензию для неограниченного количества сайтов

Перейти к плагину

Updraftplus wordpress backup plugin (updraftplus migrator)

UpdraftPlus разработан для того, чтобы упростить процесс создание резервной копии сайта и его последующего восстановления.  Сайт можно легко восстановить и закинуть его  бэкап на сервис облачного хранения. Есть функции переноса и клонирования сайта,  но чтобы их получить, вам нужно будет обновиться до премиальной версии, либо купить отдельный плагин Updraft Plus Migrator

Премиальная версия позволяет хранить «облачный» бэкап на одном из дополнительных сервисов  (Microsoft OneDrive, Microsoft Azure, Google Cloud Storage, SFTP, SCP WebDAV).

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

  • Создание бэкапов дополнительных файлов и баз данных
  • Перенос и клонирование web-сайтов
  • Продвинутые функции отчета
  • Автоматизированные бэкапы,  которые выполняются, когда начинается процесс обновления ядра WordPress-плагинов и тем
  • Рассылка бэкапов во множественные локации
  • Восстановление бэкапов других плагинов
  • Поддержка мультисайтовых   инсталляции
  • Инструменты для удаления  упоминаний о старом веб-сайте из базы данных.

Премиальный плагин стоит от $70 до $145 в зависимости от той лицензий, которую вы выбрали. Плагин также доступен, как отдельный, и стоит он 30 долларов за один или два сайта и 49 долларов, если вы приобретаете его для мультисайтовой инсталляции.

Перейти к плагину

WordPress duplicator

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

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

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

  • Резервные копии, создаваемые по расписанию
  • Интегрированный трансфер на такие «облачные» сервисы, как  Dropbox, Google Drive и  Amazon S3
  • Многоветвистость для лучшей функциональности на крупных сайтах с обширными базами данных.
  • Создание базы данных, встроенное прямо в инсталлятор
  • Соединение с сPanel прямо из инсталлятора
  • Дополнительная поддержка разработчика

Детальное описание плагина можно почитать вот в этой статье.

Перейти к плагину

И еще —

Несколько дополнительных советов по корректному переносу на другой хостинг:

  1. Проверьте, чтобы версия PHP была одинакова на старом и новом хостинге версия-php-при-переезд-на-хостинг-wordpress
  2. Проверьте, чтобы базы данных использовали полностью идентичную версию кодировки Как перенести сайт Wordpress на хостинг, советы по переносу Wordpress
  3. Воспользуйтесь услугой бесплатного переноса на новый хостинг от самого хостера! Вот тут я привожу хостеров, которых я уже проверил, и которые делаю бесплатный переезд сайтов к себе на хостинг.

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

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

Как правильно переносить сайт? (TL;DR)

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

Самым простым и автоматизированным решением лично мне представляется плагин Duplicator, который снимает копию локального сайта, предоставляет для скачивания 2 файла: .zip и installer.php, которые надо перенести на новый сервер и там запустить installer.php. Все остальное плагин проделает автоматически. В большинстве случаев имеет смысл переносить только базу с помощью этого плагина, а файлы копировать по FTP.

Скрипт Database Search and Replace поможет корректно внести изменения в базу. Для этого пользователь должен, правда, понимать, что он делает, знать, например, какие пути на старом сайте и какие — на новом.

Плагин WP Migrate DB позволяет корректно подготовить базу для миграции. Для завершения процесса пользователь должен использовать phpMyAdmin для импорта базы на новом сервере.

Интерфейс командной строки для WordPress (WP-CLI) позволяет конвертировать базу одной командой. Например, для конвертации http://site.ru в https://site.org:

wp search-replace --url=http://site.ru http://site.ru https://site.org --recurse-objects --report-changed-only --precise --skip-columns=guid --skip-tables=wp_users --skip-plugins --skip-themes

С мультисайтом ситуация несколько сложнее. Плагины Duplicator и All-in-One WP Migration переносят их только в платной версии.

Мне неизвестны бесплатные плагины для переноса мультисайтов. Если хочется сделать перенос мультисайта бесплатно, то можно скопировать базу, а потом воспользоваться Database Search and Replace.

Причины проблем при переносе

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

http://mysite.com/wp-content/uploads/2022/01/cropped-test-favicon.png

Для правильной работы сайта на новом домене (например, https://newsite.org) ссылка в базе должна измениться на

https://newsite.org/wp-content/uploads/2022/01/cropped-test-favicon.png

Обратите внимание на то, что даже при простом переводе сайта с http на https, все ссылки внутри базы надо менять!

За использованием абсолютных ссылок в WordPress лежат серьезные доводы. Почитайте этот ответ на английском StackOverflow, в котором даны объяснения. В том числе, приведено мнение одного из ведущих разработчиков WordPress. Единственная проблема, которая возникает при использовании абсолютных ссылок — перенос сайтов. Однако перенос сайта с относительными ссылками в общем случае ещё более проблематичен. В упомянутом ответе это тоже обсуждается.

Вторая причина проблем при переносе — сериализованные данные в базе. Все современные плагины (включая WooCommerce, слайдеры, различные визуальные редакторы типа Visual Composer), темы — хранят данные в базе в сериализованном виде. Это упакованные в строки массивы и объекты. Несколько примеров:

Информация о последнем отредактированном файле из темы twentyseventeen:

(39, 'recently_edited', 'a:3:{i:0;s:46:"/var/www/test/wp-content/themes/test/style.css";i:2;s:50:"/var/www/test/wp-content/themes/test/functions.php";i:3;s:0:"";}', 'no'),

Данные Jetpack

(5104, 'jpsq_sync-1494597052.351881-573008-5', 'a:6:{i:0;s:21:"jetpack_sync_constant";i:1;a:2:{i:0;s:7:"ABSPATH";i:1;s:14:"/var/www/test/";}i:2;i:1;i:3;d:1494597052.351856;i:4;b:0;i:5;a:9:{s:12:"display_name";s:4:"kagg";s:10:"user_email";s:12:"info@kagg.eu";s:2:"ip";s:14:"87.110.237.209";s:7:"is_cron";b:0;s:11:"is_wp_admin";b:1;s:7:"is_rest";b:0;s:9:"is_xmlrpc";b:0;s:10:"is_wp_rest";b:0;s:7:"is_ajax";b:0;}}', 'no'),

Данные популярного плагина бэкапа сайтов BackWPUp

(5884, 'backwpup_jobs', 'a:1:{i:1;a:32:{s:5:"jobid";i:1;s:10:"backuptype";s:7:"archive";s:4:"type";a:3:{i:0;s:6:"DBDUMP";i:1;s:4:"FILE";i:2;s:8:"WPPLUGIN";}s:12:"destinations";a:1:{i:0;s:6:"FOLDER";}s:4:"name";s:15:"Database backup";s:14:"mailaddresslog";s:12:"info@kagg.eu";s:20:"mailaddresssenderlog";s:28:"BackWPup test <info@kagg.eu>";s:13:"mailerroronly";b:1;s:13:"archiveformat";s:4:".zip";s:11:"archivename";s:24:"%Y-%m-%d_%H-%i-%s_%hash%";s:11:"fileexclude";s:51:".DS_Store,.git,.svn,.tmp,/node_modules/,desktop.ini";s:10:"dirinclude";s:0:"";s:19:"backupexcludethumbs";b:0;s:18:"backupspecialfiles";b:1;s:10:"backuproot";b:0;s:17:"backupabsfolderup";b:0;s:13:"backupcontent";b:0;s:13:"backupplugins";b:0;s:12:"backupthemes";b:0;s:13:"backupuploads";b:0;s:21:"backuprootexcludedirs";a:0:{}s:24:"backupcontentexcludedirs";a:1:{i:0;s:7:"upgrade";}s:24:"backuppluginsexcludedirs";a:1:{i:0;s:8:"backwpup";}s:23:"backupthemesexcludedirs";a:0:{}s:24:"backupuploadsexcludedirs";a:0:{}s:9:"backupdir";s:32:"uploads/backwpup-a34fdc-backups/";s:10:"maxbackups";i:7;s:18:"backupsyncnodelete";b:0;s:7:"lastrun";d:1510222228;s:7:"logfile";s:98:"/var/www/test/wp-content/uploads/backwpup-a34fdc-logs/backwpup_log_a34fdc_2022-11-09_10-10-28.html";s:21:"lastbackupdownloadurl";s:129:"http://test.kagg.eu/wp-admin/admin.php?page=backwpupbackups&action=downloadfolder&file=2022-11-09_10-10-28_SKRU7XDQ01.zip&jobid=1";s:11:"lastruntime";d:1;}}', 'no'),

во всех примерах можно найти путь к папке сайта на сервере: /var/www/test/.

Вот пример сохраненных настроек из очень популярного SEO-плагина Yoast

(291, 2, 'wp_yoast_notifications', 'a:3:{i:0;a:2:{s:7:"message";s:309:"The configuration wizard helps you to easily configure your site to have the optimal SEO settings.<br/>We have detected that you have not finished this wizard yet, so we recommend you to <a href="http://test.kagg.eu/wp-admin/?page=wpseo_configurator">start the configuration wizard to configure Yoast SEO</a>.";s:7:"options";a:8:{s:4:"type";s:7:"warning";s:2:"id";s:31:"wpseo-dismiss-onboarding-notice";s:5:"nonce";N;s:8:"priority";d:0.80000000000000004;s:9:"data_json";a:0:{}s:13:"dismissal_key";N;s:12:"capabilities";s:14:"manage_options";s:16:"capability_check";s:3:"all";}}i:1;a:2:{s:7:"message";s:768:"We've noticed you've been using Yoast SEO for some time now; we hope you love it! We'd be thrilled if you could <a href="https://yoa.st/rate-yoast-seo?utm_content=4.8">give us a 5 stars rating on WordPress.org</a>!nnIf you are experiencing issues, <a href="https://yoa.st/bugreport?utm_content=4.8">please file a bug report</a> and we'll do our best to help you out.nnBy the way, did you know we also have a <a href='https://yoa.st/premium-notification?utm_content=4.8'>Premium plugin</a>? It offers advanced features, like a redirect manager and support for multiple keywords. It also comes with 24/7 personal support.nn<a class="button" href="http://test.kagg.eu/wp-admin/?page=wpseo_dashboard&yoast_dismiss=upsell">Please don't show me this notification anymore</a>";s:7:"options";a:8:{s:4:"type";s:7:"warning";s:2:"id";s:19:"wpseo-upsell-notice";s:5:"nonce";N;s:8:"priority";d:0.80000000000000004;s:9:"data_json";a:0:{}s:13:"dismissal_key";N;s:12:"capabilities";s:14:"manage_options";s:16:"capability_check";s:3:"all";}}i:2;a:2:{s:7:"message";s:162:"Don't miss your crawl errors: <a href="http://test.kagg.eu/wp-admin/admin.php?page=wpseo_search_console&tab=settings">connect with Google Search Console here</a>.";s:7:"options";a:8:{s:4:"type";s:7:"warning";s:2:"id";s:17:"wpseo-dismiss-gsc";s:5:"nonce";N;s:8:"priority";d:0.5;s:9:"data_json";a:0:{}s:13:"dismissal_key";N;s:12:"capabilities";s:14:"manage_options";s:16:"capability_check";s:3:"all";}}}'),

Здесь мы видим в сериализованных данных строку с упоминанием домена: href="http://test.kagg.eu/wp-admin/?page=wpseo_configurator". Она мало того, что сериализована, да ещё и экранирована (").

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

Что произойдет, если просто перекинуть базу как есть на новый сервер? Очевидно, перестанут работать вещи, связанные с путями к файлам и ссылками, содержащими предыдущий домен.

Что надо делать? Очевидно, менять пути к файлам на новые и имя домена в базе. Вопрос, как. Совершенно непригодны три плохих совета, которые часто можно встретить:

  1. Заменить в базе в таблице wp_options записи c option_name = siteurl и home на новое имя домена. Работает только на самых примитивных сайтах.

  2. Сделать дамп базы в файл .sql, и провести текстовые замены путей и домена, затем залить базу на новый сервер. Это прямой путь к разрушению базы. Сериализованные данные при этом будут безнадежно испорчены.

  3. Послать несколько SQL-запросов, которые произведут замену домена. То же самое, что и выше — это прямой путь к разрушению базы. Сериализованные данные будут безнадежно испорчены.

Рассмотрим первый пример выше с сериализованными данными. После текстовой замены /var/www/test/ на, скажем, /home/i/account-name/site-name.org/public_html (как на одном популярном хостинге), из строки

s:46:"/var/www/test/wp-content/themes/test/style.css"

получится строка

s:46:"/home/i/account-name/site-name.org/public_html/wp-content/themes/test/style.css"

Только ее длина уже ни разу не 46 символов, и WordPress не сможет прочитать эти сериализованные данные из базы.

Таким образом, все три «популярных» совета надо признать вредными.

Перенос файлов

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

По 3G-соединению это делать вообще не резон, даже с учетом того, что я как следует увеличил скорость подключения (читаем как я это сделал на мобильном интернете).

Поэтому я нашел более изящный способ.

Большинство моих клиентов использует панель хостинга — ISP Manager, там есть функции переноса целого архива прямо с одного хостинга на другой — минуя мой компьютер.

Так что теперь я делаю так: создаю архив всего сайта WordPress на своем хостинге и мгновенно переношу его на второй хостинг через ту же панель ISP.

Это занимает пару секунд и совсем не жрёт трафик.Такой способ поддерживает еще несколько панелей управления хостингом (вот тут есть более подробная информация о том, какой хостинг я рекомендую).

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

Если нет возможности использовать ISP панель, то переносите по старинке через FTP.

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

Там все примитивно, разберетесь. Сохраняете после изменений wp-config.php и идем дальше.

Оцените статью
Хостинги