Акция:
Бесплатный трансфер (перенос) сайта на WordPress хостинг Hostenko
Переносить весь WordPress с одного хоста (например, с localhost вашего компьютера) на другой (удаленный виртуальный хостинг или выделенный сервер) опасно, так как если делать его недостаточно аккуратно, все может поломаться.
В этой статье я покажу, как перенести ваш WordPress с localhost на удаленный сервер с помощью phpMyAdmin. Этот процесс требует определенного набора приложений на обоих серверах.
Требования
- phpMyAdmin версии 3.0 или выше.
- cPanel на удаленном хосте. 99% хостинг провайдеров используют cPanel.
- Мы предполагаем, что у вас установлен WordPress на локальной машине, и на удаленном веб-сервере есть доступ к cPanel и phpMyAdmin.
Отлично, давайте начнем.
Экспорт Базы Данных WordPress с помощью phpMyAdmin
У себя на компьютере я использую модуль WAMP сервера. Убедитесь, что localhost в онлайне, и откройте ссылку в браузере:
http://127.0.0.1/phpmyadmin/Выберите нужную базу данных и щелкните по вкладке "Export". Чтобы узнать, какую базу данных использует ваш WordPress, откройте wp-config.php файл в папке вашего WordPress и посмотрите на имя возле ‘DB_NAME’.
Следовательно, в этом руководстве я буду выбирать БД yoursitename_wp:
- Во вкладке Export вы увидите "Export Method". Выберите второй вариант, то есть "Custom – display all possible options".
- Далее, в "Output" выберите "gzipped" для опции Compression method.
- Оставьте остальные настройки как есть и выберите "Go".
- Ваш браузер должен скачать файл под названием "yoursitename_wp.sql.gz". Имя базы данных может быть другим, но расширение будет таким же, то есть .sql.gz.
Создайте архив с вашим WordPress сайтом
У нас есть копия базы данных, теперь займемся простой частью. Перейдите в папку вашего WordPress, выберите все файлы (Ctrl+A) и создайте zip архив. Назовем его wp.zip. Обратите внимание, что размер wp.zip может быть разным в зависимости от установки WordPress, поскольку у некоторых может быть тяжелый медиа контент (например, фотогалереи). Так что нет фиксированного размера для wp.zip.
Создайте новую БД и пользователя в cPanel
Откройте cPanel вашего удаленного веб-сервера и выберите "MySQL Database Wizard". На первом шаге выберите имя. В данном случае я выбрал "wplift".
Обратите внимание: cPanel автоматически добавляет префикс к имени базы данных и пользователя. В данном руководстве это "explorin_", так что полное название базы данных будет "explorin_wplift".
Щелкните Next, чтобы перейти на Шаг 2. Здесь мы создаем пользователя базы данных и пароль для него. Я рекомендую использовать необычное имя пользователя (из соображений безопасности) и всегда использовать генератор паролей.
Запишите значения и выберите "Create User".
Для этого руководства имя пользователя будет "explorin_uzzer" с паролем "?0aAsMOcJG_m".
На финальном шаге вы назначаете созданному пользователю определенные права доступа к базе данных. Выберите "ALL PRIVILEGES" и щелкните "Next Step". Это создает новую базу данных и пользователя и даст пользователю необходимые права.
Импорт БД на удаленный сервер с помощью phpMyAdmin
Теперь, когда мы создали базу данных и пользователя, давайте импортируем содержимое предыдущей базы данных в новую. Откройте phpMyAdmin удаленного сервера и выберите базу данных, которую вы только что создали. В нашем случае это будет explorin_wplift. Щелкните по "Import".
В этой вкладке, подгрузите ранее экспортированный файл "yoursitename_wp.sql.gz" в опции "File to Import". Убедитесь, что отмечен пункт Do not use AUTO_INCREMENT for zero values. Щелкните "Go".
Если импорт пройдет успешно, вы получите уведомление, похожее на это:
Распакуйте архив с сайтом в правильную папку
Если мы хотим, чтобы наш WordPress сайт был доступен по адресу , нам нужно распаковать архив wp.zip в главную директорию, то есть public_html.
Но если мы хотим, чтобы WordPress был доступен по адресу , нам нужно распаковать файлы в public_html/blog.
Редактирование wp-config.php
Это самая важная часть. Внимательно прочитайте предыдущие шаги перед тем, как менять содержимое этого файла. Вам нужно изменить следующие предопределенные константы:
- Имя базы данных, то есть DB_NAME
- Имя пользователя базы данных, то есть DB_USER
- Пароль пользователя, то есть DB_PASSWORD
Также нужно будет определить 2 новые константы:
- WP_SITEURL
- WP_HOME
Мы будем использовать значения, определенные на предыдущих шагах этого руководства, чтобы вы поняли идею. Это будет работающая конфигурация для нашего руководства.
Примечание: одинарные кавычки, точки с запятой и скобки важны, не удаляйте их!
Вот такой код должен быть в файле wp-config.php в результате:
/** The name of the database for WordPress */ define('DB_NAME', 'explorin_wplift'); /** MySQL database username */ define('DB_USER', 'explorin_uzzer'); /** MySQL database password */ define('DB_PASSWORD', '?0aAsMOcJG_m'); /** Defining WP_HOME and WP_SITEURL */ define('WP_HOME', 'https://yoursitename.com/'); define('WP_SITEURL', 'https://yoursitename.com/');
Заключение
Если все пройдет хорошо, вы должны увидеть свой WordPress сайт по адресу . Если вы столкнетесь с какой-либо проблемой, перепроверьте каждый шаг. Помните, что пропущенная точка с запятой может сделать ваш сайт недоступным.
Комментарии к записи: 22
Я обычно при переносе просто find&replace использую: меняю старый домен на новый. После этого остается только в wp-config пути поправить и накатить обновленную БД.
Раньше еще проблемы были с файлами темы, пока я не начал относительные пути использовать.
Простите, что не по теме. Зашёл, что бы сказать спасибо за статью и занести ее в эвернот (читаю через рсс-агригатор, и стандартный способ добавления в эвернот не работает с вашим сайтом), но в очередной раз был встречен вскакивающим окном с «приглашением» вступить в какую-то группу в какой-то из социальных сетей.
Очень неприятно такое отношение к читателям на столь уважаемом ресурсе. (добавление в эвернот, кстати, тоже из-за этой вскакивающей заразы не работает нормально).
Я знаю, что мой комментарий ничего не изменит, но молчать уже не могу.
Простите за резкость…
Добрый день. Мы добавили исключение для мобильных устройств на показ Facebook Lightbox.
Репект !!!
Вот эти 2 константы рулят )
WP_SITEURL
WP_HOME
А можно просто купить хостинг на hostenko и перекинуть файлы через ftp ))
А как с денвера перенести на хостинг «Хостенко», так как я уже в денвере сайт наполнила записями?
Обратитесь в службу поддержки Хостенко по скайпу или email. Если вы оплачивали хостинг на Хостенко, специалисты перенесут ваш сайт.
спасибо за стаю! Хочу отметить что на первой странице выдачи в яндексе вы на 13-ом месте, пока дошел до вас потерял кучу времени перебирая сайты с постами 2009 года ((, к стати напишите такую де стать только процес наобором потому что я искал именно это…, получите дополнительный траф ))
Спасибо еще раз за пост
Доброго времени суток, все сделал по вашей инструкции. но у меня почемуто все картинки все еще подгружаются с локального сервера, подскажите что где вправить нужно. Спасибо.
Для кого ориентированная данная статья? Если для новичков, то тут написано путем, один пишу 10 держу в голове. Если для продвинутых то им это и не нужно читать. Двойка за написание
Спасибо за полезную информацию!
Интересная подробная статья) спасибо) а каким хостером вы пользуетесь?
Нашим собственным) https://hostenko.com/
И не забываем запросы в БД после переноса ! ! !
UPDATE wp_options SET option_value = REPLACE(option_value,
'http://старыйсайт.ru', 'http://новыйстай.ru') WHERE option_name =
'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = REPLACE(guid,
'http://старыйсайт.ru','http://новыйстай.ru');
UPDATE wp_posts SET post_content = REPLACE(post_content,
'http://старыйсайт.ru', 'http://новыйстай.ru');
Спасибо большое! Добавил строки из совета:
UPDATE wp_posts SET guid = REPLACE(guid,
'http://старыйсайт.ru','http://новыйстай.ru');
UPDATE wp_posts SET post_content = REPLACE(post_content,
'http://старыйсайт.ru', 'http://новыйстай.ru');
Но почему-то пришлось из контента убрать «'http://», т.к. двоеточие не отображалось и ссылка билась.
Спасибо вам большое, помогло.
Добрый день! Сделал слегка иначе — с добавление кода в БД о замене localhost на siteurl, потом добавил переменные в wp-config по Вашему описанию, но картинки отображаются по старому адресу. Помогите, пожалуйста.
Вот ссылка на мой сайт
Здравствуйте! Сделал все по вашей инструкции. Потом с радостью зашел на сайт в интернете, он работает отлично. Потом решил зайти в админку (консоль), но там выдает ошибку Internal Server Error (если без файла в хостинге .htaccess), а с htaccess «Страница не найдена» (ошибка хром). Помогите плиз! Заранее благодарен.
Здравствуйте, Скажите пожалуйста, что прописывать в значении MySQL hostname ?
Спасибо за информацию, как раз взял тестовый хостинг у хендихост, буду пробовать переносить
Спасибо огромное, получилось!!!!)) Перед этим 5 источников брал на инструкцию к действию и ничего не выходило… а тут бац)) и всё )) Красота!
Не работать может не только из-за запятых.
Часто сайт переносят сперва на поддомен, чтобы протестировать работу. И все вышенаписанное можно соблюсти, а все равно увидеть ошибку типа «Не удалось найти IP-адрес сервера yoursite.com» (ERR_NAME_NOT_RESOLVED).
Чтобы ее устранить, необходимо прописать данные поддомена в DNS.