Как перенести сайт с Денвера на хостинг

Доброго времени суток, уважаемые читатели. Когда-то давно, аж 27 сентября прошлого года, я рассказывала, как установить WordPress на Denwer. Ещё тогда я решила, что у этой статьи просто обязано быть продолжение - как перенести готовый WordPress с Денвера на хостинг. Решила давно, а вот до готовой статьи добралась только сегодня. Надеюсь, кому-то эта статья будет полезна.

Как перенести сайт с денвера на хостинг
С самого начала хочу сказать, что алгоритм переноса любой CMS, работающей с базой MySQL одинаков. По крайней мере я в этом убедилась на личном опыте, работая с WordPress, Joomla и phpBB.

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

Подготовительные работы перед переносом сайта с локального компьютера на хостинг

На стороне хостера

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

Самое главное, что вам сразу потребуется, это:
  1. Доступ FTP – дает ли вам этот доступ хостер сам или вы в личном кабинете можете самостоятельно создать данное подключение. Оно нужно для того, чтобы загрузить все файлы вашего сайта, которые пока находятся на вашем компьютере, на сервер хостера.
  2. База MySQL – создает ее для вас сам хостер и высылает логин и пароль к ней, или вы самостоятельно должны создать новую базу в личном кабинете.
Что значит – дает вам хостер сам? Когда вы заказываете услугу и оплачиваете ее, вам должно прийти письмо на почту с оповещением, что услуга подключена. Как правило, сразу в этом письме и есть дальнейшие инструкции или, как вариант, ссылка на справочный материал. Итак, если хостер сам создает для вас FTP подключение и базу MySQL, то он обязательно пришлет логины и пароли в письме вам на почту. Не теряйте такое письмо!

Если в письме нет ничего подобного, то идем в личный кабинет (уж к нему-то точно вам хостер пришлет доступ) и ищем в личном кабинете ссылки на разделы. Ищем что-то похожее на FTP подключение и Базы MySQL.

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

Итак, разобрались, что перед переносом сайта у вас на руках должны быть данные для подключения к серверу хостера.
Для FTP подключения должно быть:
  • имя сервера, к которому вы будете подключаться через FTP подключение. Может иметь разные названия, зависит от настроек хостера. Вот возможные варианты:
    • ftp.ваш_домен.ru
    • ftp.домен_хостера.ru
    • XX.XXX.XX.XXX – какие-то цифры
  • Логин
  • Пароль
Для подключения к базе MySQL:
  • Название базы
  • Логин
  • Пароль
Название базы может совпадать с логином.
На этом этапе мы обладаем заветным доступом к серверу через FTP и данными нашей новой Базы MySQL.

Подготовка на своем компьютере.
Что такое FTP, FTP клиент и FTP подключение

FTP – это специальный протокол, с помощью которого мы можем перемещать файлы с одного сервера (компьютера) на другой при помощи интернета.
Для этого существуют программы - FTP клиенты. Есть как бесплатные FTP клиенты, так и платные. Признаюсь честно, я не сильно в них разбираюсь, у меня так получилось, что изначально я поставила пробную версию платной программы Total Commander. Она считается одним из самых лучших FTP клиентов. Затем у меня сломался компьютер, и, когда на заказ собрали новый и установили ОС, мне поставили и Total Commander. С тех пор так им и пользуюсь. В общем, для переноса сайта вы должны обязательно поставить себе подобную программу.

Когда у вас будут данные для FTP подключения и установлен FTP клиент, вы открываете программу и создаете новое подключение. Вот как это выглядит в Total Commander:

Создание нового FTP подключения
Название для себя – вписываете любое удобное для себя имя.

Что такое База MySQL и подготовка Базы к переносу

Одним из самых сложных этапов (когда в этом ещё не разбираешься) является перенос Базы MySQL.

Что такое База MySQL?
База MySQL – это хранилище (архив, библиотека) информации.
Хранилище имеет вид таблицы, каждая ячейка которой отвечает за хранение определенного вида информации. Например, таблица, которая отвечает за статьи в вашем блоге имеет отдельную ячейку:
  • для хранения идентификационного номера вашей статьи;
  • для хранения даты, когда была опубликована статья;
  • для хранения имени автора, кто опубликовал данную статью;
  • для хранения текста статьи и другие ячейки.
Вот в таком виде хранится информация в Базе MySQL:

Таблица MySQL
На вашем локальном компьютере на Денвере ваша база находится по адресу http://localhost/tools/phpmyadmin/ – это универсальный адрес, т.е. других вариантов просто и  быть не может. Интерфейс, в котором мы работаем с базой данных называется phpMyAdmin.

В левой колонке перечислены все базы, которые вы создавали на своем компьютере в тот момент, когда впервые устанавливали CMS на Денвер:

Базы MySQL
Переходим в нужную базу. Находим вверху вкладку Экспорт. Т.к. мы пользуемся Денвером и не умеем пользоваться базами на профессиональном уровне, то все настройки для экспорта базы, выставленные в Денвере по умолчанию, подходят для экспорта базы. Т.е. если у вас нет каких-либо веских причин что-то менять в настройках по умолчанию, то ничего не меняйте. Внизу страницы установите галочку Save as file и нажмите кнопку Go (возможно, у вас все это будет на русском, у меня почему-то на английском).

Экспорт Базы MySQL
База сохранится на вашем компьютере.
Важное замечание!
Могло так получиться, что во время установки какой-либо CMS на Денвер вы не создавали новую базу, а выбрали уже существующую на тот момент, например mysql (она всегда создается по умолчанию, когда вы устанавливаете Денвер на свой компьютер). Так вот в этой Базе, созданной по умолчанию, уже содержится какая-то информация, и теперь она "перемешалась" с той, экспорт которой нам нужно сделать. Именно для таких случаев, когда имеется только одна база, и в ней содержатся данные нескольких разных сайтов, всем таблицам одного сайта присваивается префикс таблиц – своего рода отличительный знак. Вот как это выглядит:

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

Экспорт по префиксу таблиц
Дальше те же действия, что и описаны выше.
Итак, на данный момент мы имеем:
  1. Установленный FTP клиент.
  2. Создано подключение к серверу хостера.
  3. Имеем файл базы данных в формате .sql.
  4. Имеем данные для подключения к новой базе, которая находится на сервере хостера.
Переходим к переносу сайта.

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

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

Шаг первый – переносим Базу MySQL

Для начала выясним, как хостер позволяет загрузить вашу базу на сервер. Как правило, хостер предоставляет доступ в phpMyAdmin – точно такой же, как и в Денвере, где вы делали экспорт вашей базы MySQL. Ссылку на phpMyAdmin хостер либо присылает в письме вместе  с другими данными, либо в личном кабинете есть ссылка на переход в phpMyAdmin. Если у вас есть такой доступ, заходим, жмем по вкладке Импорт. Далее по кнопке Выберите файл, выбираем файл со своего компьютера.

Импорт MySQL на хостинг
Внизу справа будет кнопка для загрузки. После загрузки вы получите сообщение с поздравлениями о том, что база загружена.

Может быть и такой вариант, когда хостер дает возможность загрузить базу на свой сервер по FTP соединению, а затем в личном кабинете загрузить базу непосредственно в phpMyAdmin. Подробности об этом ищите в личном кабинете у хостера.

Шаг второй – переносим файлы сайта с компьютера на хостинг

Открываем на своем компьютере FTP клиент. Подключаемся к серверу.

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

FTP-клиент
Как видно из скрина, в Окне 1 находятся папки, которые создал для нас хостер для нашего сайта. Ничего нового здесь создавать не нужно. В Окне 2 – наша папка с сайтом, который мы собираемся перенести на хостинг.

В Окне 1 у меня три папки, которые создал хостер. У вас может быть всего одна папка, или две, они могут совершенно по другому называться. Тут мы должны знать, в какую именно папку должны перенести свой сайт. Обычно, информацию об этом можно найти на сайте хостера в справочной документации. Как правило, папка, в которой должен быть сайт может иметь такие названия:
  • public
  • html
  • public_html
  • www
  • public_www
Очень важно - сайт нужно залить именно в папку. Двойной клик мышки по папке откроет ее (в Total Commander). Папка будет пустой, либо в ней может быть один единственный файл index.html (зависит от хостера). Если такой файл имеется, смело его удаляем.

В Окне 2 кликаем по папке www. Вы увидите файлы своего сайта, который пока находится на вашем компьютере на Денвере.

Перенос сайта на хостинг
Выделяем все файлы и жмем на кнопку Копирование. Начнется перенос папок.

Шаг третий – редактирование файла конфигурации

Редактирование файла конфигурации - самый важный этап в процессе переноса сайта на хостинг. У каждой CMS имеется свой конфигурационный файл, в котором содержится важная информация:
  • Имя Базы данных MySQL.
  • Логин для подключения к Базе MySQL.
  • Пароль к Базе MySQL.
Также там есть поля и для другой информации, это уже зависит от конкретной CMS.

Итак, конфигурационный файл WordPress называется wp-config.php, такой же файл в Joomla называется configuration.php, а в phpBB – просто config.php. Файл конфигурации находится в корне сайта. Вы можете его отредактировать, перед любым из описанных выше действий.

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

Открываем этот файл в редакторе. Я сделала скрины разных файлов (именно те места, которые необходимо отредактировать), чтобы вы увидели, на сколько они все похожи.
Конфигурационный файл WordPress:

Файл конфигурации WordPress
Конфигурационный файл phpBB:

Файл конфигурации phpbb
Конфигурационный файл Joomla:

Файл конфигурации Joomla
Обратите внимание, что все все файлы между собой достаточно похожи. Везде есть поле, для указания имени базы, логина, пароля. Я специально выделила ещё адрес базы localhost. Как правило, адрес базы всегда имеет именно это название.

В файле joomla есть ещё два поля, которые я указала, это адреса папок logs и tmp. Необходимо прописать путь от корня сервера хостера до этих папок.

Также вы можете увидеть, что в конфигурационном файле есть и другие поля, которые могут быть заполнены или быть пустыми. Большинство полей можно настроить через админку CMS. А вот подключение к базе данных на сервере хостера всегда надо указывать вручную (в том случае, если мы переносим уже работающий сайт с Денвера или вообще с любого другого хостинга).

На этом перенос сайта завершен. Теперь он доступен в интернете и вы можете набрать его адрес в адресной строке браузера.

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

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

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