Любая миграция сайта считается одной из самых сложных операций. К счастью, WordPress предоставляет множество плагинов для резервного копирования, которые помогают автоматизировать весь процесс резервного копирования и миграции.Однако WordPress построен таким образом, что ручная миграция WordPress может быть проще.
В этом уроке я покажу вам, как перенести сайт WordPress вручную на новый хост или сервер. Это особенно полезно, если сайт размещен на сервере с недостаточными ресурсами для включения плагина резервного копирования. Плагины резервного копирования обычно требуют минимального количества ресурсов для выполнения резервного копирования сайта и миграции на другой сервер. Я подготовил список резервных плагинов для WordPress. Итак, если ваш сервер исправен и имеет достаточные ресурсы, я рекомендую вам установить плагин резервного копирования для миграции WordPress.
Резервное копирование WordPress
Каждый сайт WordPress состоит из трех основных компонентов: основных файлов WordPress, пользовательских файлов ( wp-content directory) и базы данных WordPress.Если версия WordPress не изменена, основные файлы не меняются. wp-content и база данных, с другой стороны, меняется ежедневно или даже ежечасно, в зависимости от посещаемости сайта. Если вы создаете новый контент на регулярной основе, новые изображения, видео и текст загружаются каждый день, увеличивая количество файлов на сервере и размер базы данных.
Первым шагом является сжатие wp-content, чтобы уменьшить его размер и быстро перенести его на новый сервер. Во-вторых, экспортируйте базу данных WordPress, сожмите ее вместе с пользовательскими файлами и подготовьте к миграции.
wp-контент
wp-content это подкаталог каталога WordPress. Он хранит все данные, загруженные пользователем, такие как темы, плагины, вложения, фотографии, видео и так далее. Если администратор сайта не настроит CMS для этого, большинство сайтов WordPress не загружают пользовательский контент в любой другой каталог. Если вы используете сильно настроенную тему, сделайте резервную копию каталогов, содержащих данные, относящиеся к структуре вашего пользовательского сайта.
Многие плагины резервного копирования сохраняют файлы резервных копий кроме wp-content. Итак, если вы хотите перенести сохраненные файлы резервных копий на новый сервер, включите их в архив; или загрузите их и сохраните в безопасном месте. Добавление сохраненных файлов резервных копий может значительно увеличить размер полной резервной копии, поэтому, пожалуйста, загрузите их локально, если это возможно.
.htaccess
.htaccess файл представляет собой конфигурационный файл, который позволяет пользователям настраивать различные параметры для каждого каталога. WordPress размещает несколько .htaccess файлов, основной из которых находится в корне WordPress.
Создайте резервную .htaccess копию файла, поскольку он содержит полезные параметры конфигурации, установленные плагинами, такими как брандмауэр и плагины кэша.
wp-config.php
wp-config.php это файл конфигурации WordPress, который содержит наиболее важную информацию для работы WordPress. wp-config.php файл предоставляет информацию о подключении к базе данных. wp-config.php файл также может перезаписывать ограничения PHP, установленные сервером, среди прочего. Если вы переносите свой сайт на новый хост, обязательно скопируйте wp-config.php вместе с другими файлами на новый сервер.
База данных WordPress
При создании нового сайта или переносе старого убедитесь, что база данных настроена соответствующим образом. Как указывалось ранее, wp-config.php файл содержит информацию о базе данных, такую как имя базы данных, пользователь базы данных (с полным доступом к базе данных) и пароль пользователя.
Чтобы эффективно перенести WordPress, мы должны экспортировать всю базу данных со старого сервера и подготовить ее к переносу на новый хост.
Перенос WordPress вручную на новый хост
Для целей этой демонстрации я предположу, что наш старый IP-адрес хост-сервера 192.168.29.5 и наш новый IP-адрес хост-сервера 192.168.57.8.
Во-первых, настройте ssh на наш старый сервер
Если ssh-порт вашего сервера отличается от 22, используйте
Экспорт базы данных
Первым шагом является экспорт базы данных. Если ваш сайт получает большой объем трафика, вы можете либо поставить его на обслуживание, либо перенаправить посетителей на резервный сервер. WordPress постоянно записывает данные в базу данных, и большие веб-сайты могут испытывать замедления во время процесса экспорта базы данных.
Как только вы будете готовы, используйте следующую команду
Измените wordpress_database именем базы данных WordPress
Нажмите enter и введите пароль root MySQL. Теперь расслабьтесь и ждите. В зависимости от размера базы данных этот процесс может занять некоторое время. Не нажимайте + C во время процесса.
После завершения процесса у вас будет wp_database.sql файл в рабочем каталоге, то есть site-backup.
Резервное копирование wp-контента, wp-config.php, и .htaccess
Пришло время создать резервную копию пользовательских файлов. Как уже говорилось ранее, я предполагаю, что ваш WordPress использует стандартные темы WordPress, а не сильно настроенные или созданные на заказ темы. Если вы используете пользовательские темы, пожалуйста, включите соответствующие каталоги в следующую команду.
Войдите в корневой каталог WordPress и выполните следующую команду
После сжатия файлов переместите сжатый файл в вышеупомянутый site-backup каталог.
У нас есть база данных сжатого сайта, пользовательские данные WordPress и настройки в нашем $HOME/site-backup/ каталоге. Теперь сожмите весь каталог site-backup, чтобы его можно было легко перенести на новый сервер.
Теперь у вас есть полная резервная копия вашего сайта WordPress. Вы можете либо загрузить эту резервную копию на переносной жёсткий диск и переместить ее на новый сервер, либо rsync перенести ее непосредственно на новый сервер.
Давайте загрузим эту резервную копию непосредственно на новый сервер.
настройте ssh на новый сервер
Используйте rsync для загрузки файла резервной копии
Точка в конце приведенной выше команды-это конечный каталог, то есть текущий рабочий каталог.
Введите пароль root и дождитесь завершения загрузки.
Установите WordPress на Новый хост
Теперь, когда у нас есть резервные данные на новом сервере, мы можем настроить новый сайт WordPress и импортировать все наши данные на этот сайт.
Создание базы данных для нового сайта
Войдите в командную строку mysql и используйте следующие команды, чтобы создать новую базу данных, нового пользователя и предоставить новому пользователю все привилегии для базы данных WordPress.
Создать новую базу данных
Создать нового пользователя базы данных
Замените имя пользователя и пароль нужными значениями.
Предоставить доступ к базе данных новому пользователю
Импорт базы данных
Теперь, когда наша база данных создана, мы можем экспортировать загруженную базу данных.
Распакуйте файл резервной копии
Он экспортирует еще два файла wp_database.sql и website-content.tar.gz.
Импортируйте базу данных в WordPress со следующей командой
Введите пароль root и расслабьтесь.
Установить WordPress
Я предполагаю, что вы используете веб - сервер Apache. Таким образом, путь по умолчанию для сервера Apache таков /var/www/html. cd и в корневом каталоге удалить index.html.
СКАЧАТЬ WORDPRESS
Импорт резервной копии WordPress на новый сайт
Приведенная выше команда распакует файлы сайта wp-content, wp-config.php, и .htaccess. Мы можем использовать rsync для перехода wp-content/к новой установке WordPress.
Редактировать wp-config.php
И один из наших последних шагов-подключить наш сайт к вновь созданной базе данных. Помните, что мы уже импортировали базу данных нашего сайта, поэтому она готова. Нет необходимости запускать установку WordPress.
Теперь замените старое имя базы данных, имя пользователя базы данных и пароль текущей базой данных сервера, которую мы создали выше, то есть wordpress.
Исправить права доступа к файлам WordPress
Никогда не забывайте устанавливать правильные права доступа к файлам. Без него WordPress может работать неправильно, и вы можете раскрыть свои данные, если установлены неправильные разрешения.
Измените ‘siteurl’ и ‘home’ в базе данных
Если вы перемещаете свой сайт без изменения доменного имени, вы можете пропустить этот шаг. Если вы изменили доменное имя, обязательно обновите базу данных новым доменным именем.
Нам нужно обновить столбцы в таблице wp_options. Если у вас есть phpMyAdmin, вы можете открыть phpMyAdmin > wordpress > wp_options > siteurl.
Измените значение столбца ‘siteurl‘ на ‘https://www.newdomain.com. Кроме того, измените значение столбца "home" на ‘https://www.newdomain.com.
Обновите siteurl и home с помощью командной строки mysql
Укажите свое доменное имя на новом сервере. Если ваш веб-сервер настроен правильно, вы должны увидеть свой старый сайт на новом хосте.
Заключительные слова
Ручная процедура кажется довольно сложной, но поверьте мне, что как только вы привыкнете к ней, она сэкономит вам деньги на платном плагине резервного копирования. Используя описанные выше шаги, мы даже можем создать скрипт и настроить задание cron для автоматического резервного копирования нашего веб-сайта. Все это без использования плагина.