В данной статье я расскажу о том, с какими трудностями столкнулся при переносе сайта Joomla с удаленного хостинга на локальный.

Из этой статьи вы также узнаете:

  1. как перенести сайт Joomla с удаленного хостинга на локальный (localhost).
  2. что делать при утере пароля к административной части сайта, имея доступ к базе данных.
  3. как перенести сайт Joomla с локального хоста на удаленный (как выложить сайт в интернет)

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

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

Тогда был разработан порядок переноса сайта с удаленного сервера на локальный компьютер.

  1. На своем компьютере создаем базу данных с параметрами аналогичными БД с удаленного хоста.
  2. Устанавливаем Joomla с такими же параметрами как на удаленном хостинге.
  3. Импортируем базу данных, предварительно удаляем строки, созданные при установке Joomla.
  4. Создаем архив сайта, закачиваем архив к себе на компьютер, удаляем файлы установки Joomla и заменяем их файлами удаленного сервера. Файлы configuration.php и .htaccess оставляем, но вносим в них изменения. Изменяем имя пользователя базы данных на root, удаляем пароль установки (установили пустой пароль), хост определяем как localhost.

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

Исследовав папку administrator я обнаружил в нем наличие файла .htaccess. Каким образом он туда попал? Я думаю, что он был переопределен в эту папку на сервере. Удаляем файл .htaccess. Ура!!! Панель администрирования заработала. Именно этот файл в папке administrator был причиной того, что сайт при переносе с удаленного хостинга не работал на локальном сервере.

Только пароль для входа на сайт не работал. Для входа в панель администрирования на удаленном хостинге использовался акаунт в Google.

Как быть если утерян пароль администратора для доступа в административную панель сайта Joomla?

Доступ к базе данных у меня был, а значит, ищем в ней строки User, находим имя администратора и пароль  (password), который в базе данных зашифрован, для обеспечения безопасности. Что бы изменить, пароль вам потребуется хешированная версия известного слова, например:

433903e0a9d6a712e00251e44d29bf87:UJ0b9J5fufL3FKfCc0TLsYJBh2PFULvT - это хеш-код слова admin

- secret = d2064d358136996bd22421584a7cb33e:trd7TvKHx6dMeoMmBVxYmg0vuXEA4199

- OU812 = 5e3128b27a2c1f8eb53689f511c4ca9e:J584KAEv9d8VKwRGhb8ve7GdKoG7isMm

Для редактирования записи в строке Administrator щелкаем на значке с карандашом в левой части экрана, меняем поле password, сохраняем изменения кнопкой справа внизу экрана. Заходим на сайт – все работает.

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

  1. Перебрасываем в базу данных, созданную на удаленном хосте нашу базу. Имя базы данных остается таким, как было создано при установке. Лишние строки от прежней установки удаляем.
  2. Заходим в файловый менеджер хостинга, удалям папки установки системы Joomla. Оставим только файлы configuration.php и .htaccess.
  3. При помощи  FTP  закачиваем на сервер архив своей Joomla с localhost и распаковываем.
  4. Вносим изменения в файл конфигурации configuration.php, достаточно изменить только префикс таблиц базы данных.

Все – сайт заработал, и стал доступен всему интернет сообществу.