Перенос сайта на другой хостинг: Как перенести Joomla

Многие начинающие веб-мастера ошибочно полагают, что перенести сайт, это всё равно что переместить папку с документами с одного компьютера на другой: скопировал, вставил, и готово. С сайтами на Joomla это не так. Чтобы сайт заработал на новом хостинге, нужно перенести все его компоненты и при этом правильно связать их между собой. Сам движок сайта, его ядро, все модули, плагины, то есть файлы в формате PHP, файлы контента: изображения, документы, видео и другие медиафайлы, и саму базу данных в формате SQL, где хранятся все статьи, настройки, данные пользователей, комментарии и прочая динамическая информация. Мало просто загрузить файлы, нужно, чтобы они увидели базу данных, а база данных, чтобы была доступна по правильному адресу.

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

Итак, готовимся к переезду на старом хостинге

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

Шаг 1. Находим корневую папку с файлами сайта

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

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

В панели ispmanager корневая директория указана в разделе «Сайты». Зайдите туда, найдите свой домен и посмотрите, какой путь указан как корневой.

В панели cPanel корневая папка называется public_html или www.

Вне зависимости от того, где именно расположены файлы, их перечень для CMS Joomla выглядит примерно одинаково: вы увидите папки administrator, components, modules, plugins, templates, cache, logs, tmp, а также файлы index.php, configuration.php и другие.

Шаг 2. Создаём архив с файлами сайта

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

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

Как создать архив? Это зависит от того, где находятся ваши файлы:

  • Если сайт на хостинге, воспользуйтесь файловым менеджером в панели управления. В ispmanager это делается через раздел «Файловый менеджер»: выделяете все файлы и папки в корне, нажимаете «Создать архив». Формат лучше выбрать .zip, он поддерживается практически везде.
  • Если сайт на локальном сервере, просто заархивируйте папку с сайтом с помощью любого архиватора (WinRAR, 7-Zip и т.д.).

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

Шаг 3. Узнаём, какую базу данных использует сайт

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

В CMS Joomla все настройки подключения к базе данных хранятся в файле configuration.php, который лежит в корневой папке сайта. Откройте этот файл в любом текстовом редакторе (блокнот, Notepad++, Sublime Text и т.д.) и найдите строки примерно такого содержания:

public $host = ‘localhost’;
public $user = ‘joomla_user’;
public $password = ‘password’;
public $db = ‘joomla_db’;

Вот что означают эти параметры:

  • $host — адрес сервера базы данных. В подавляющем большинстве случаев это localhost или 0.0.1. Это означает, что база данных находится на том же сервере, что и файлы сайта.
  • $user — имя пользователя, от имени которого сайт подключается к базе данных.
  • $password — пароль этого пользователя.
  • $db — имя базы данных, которую использует сайт.

Запишите эти данные, они понадобятся вам на новом хостинге. Особенно обратите внимание на имя базы данных и пароль.

Шаг 4. Создаём дамп (резервную копию) базы данных

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

Для этого мы будем использовать phpMyAdmin, самый популярный инструмент для управления базами данных через веб-интерфейс:

  1. Войдите в phpMyAdmin на вашем текущем хостинге. Обычно доступ к нему есть в панели управления (ispmanager, cPanel и т.д.).
  2. Используйте для входа имя и пароль пользователя базы данных (те самые, которые вы записали на предыдущем шаге).
  3. В левой части экрана кликните по названию базы данных, которую использует ваш сайт.
  4. Перейдите во вкладку «Экспорт» в верхнем меню.
  5. Убедитесь, что выбран формат SQL, это стандартный формат для дампов баз данных.
  6. Нажмите кнопку «ОК» или «Выполнить», после этого браузер начнёт скачивать файл дампа.

Этот файл с расширением .sql сохраните в надёжном месте на своём компьютере. Он понадобится вам на следующем этапе.

Готовим новый хостинг к приёму сайта

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

Шаг 5. Заказываем и заходим в новый хостинг

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

  1. Авторизуйтесь на сайте
  2. Перейдите в раздел «Домены и услуги».
  3. Выберите нужную услугу хостинга из списка.
  4. Нажмите «Перейти в панель управления».

Шаг 6. Определяем корневую папку на новом хостинге

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

Если ваш домен уже добавлен на новый хостинг (вы переносите сайт на уже существующий аккаунт), пропустите этот шаг и переходите сразу к загрузке файлов.

Если домен ещё не добавлен, сделайте это:

  1. В панели ispmanager перейдите в раздел «Управление DNS».
  2. Нажмите кнопку «Создать домен».
  3. В открывшемся окне:
    • Введите доменное имя вашего сайта.
    • Выберите из раскрывающегося списка IP-адрес.
    • Поставьте галочку в графе «Создать сайт».
    • Если вы планируете пользоваться почтой на хостинге, поставьте галочку и в графе «Создать почтовый домен».
  4. Нажмите «ОК».

После этого ispmanager создаст для вашего домена корневую папку, куда нужно будет загрузить файлы сайта.

Шаг 7. Загружаем архив с файлами сайта

Теперь самый ответственный момент, перенос файлов.

У вас есть два основных способа загрузить архив на новый хостинг:

Способ 1. Через файловый менеджер ispmanager:

  1. Зайдите в раздел «Файловый менеджер».
  2. Перейдите в корневую папку вашего домена (обычно это /www/ваш-домен или /var/www/ваш-домен/data/www/ваш-домен).
  3. Нажмите кнопку «Загрузить» и выберите архив с файлами сайта.
  4. Дождитесь окончания загрузки.
  5. Распакуйте архив прямо в файловом менеджере (обычно для этого нужно кликнуть правой кнопкой по архиву и выбрать «Распаковать»).

Способ 2. Через FTP:

  1. Используйте любой FTP-клиент (FileZilla, Total Commander и т.д.).
  2. Подключитесь к серверу по FTP (данные для подключения есть в панели управления).
  3. Перейдите в корневую папку домена.
  4. Загрузите архив.
  5. Распакуйте его (если ваш FTP-клиент не умеет распаковывать на сервере, загружайте не архив, а все файлы и папки по отдельности, но это дольше).

После распаковки проверьте, что в корневой папке появились все файлы и папки сайта, а также тот самый configuration.php.

Шаг 8. Создаём новую базу данных на новом хостинге

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

  1. В панели ispmanager перейдите в раздел «Базы данных».
  2. Нажмите кнопку «Создать базу данных».
  3. На открывшейся странице укажите:
    • Имя базы данных, придумайте любое название. Обратите внимание, что к имени автоматически добавляется префикс вашего логина хостинга, например u1234567_mybase, просто учтите, что полное имя базы будет длиннее, чем вы ввели.
    • Имя пользователя, придумайте пользователя, который будет иметь доступ к этой базе.
    • Пароль, вы можете сгенерировать новый пароль или использовать тот же, что был в файле configuration.php на старом хостинге. Я рекомендую использовать старый пароль, так вам не придётся менять его в конфигурации.
  4. Нажмите «ОК».

База данных создана. Запишите полное имя базы данных (с префиксом), имя пользователя и пароль, они понадобятся для настройки файла configuration.php.

Шаг 9. Импортируем дамп базы данных

Теперь загружаем в новую базу данных содержимое старой:

  1. Перейдите в phpMyAdmin на новом хостинге в панели управления.
  2. В левой части экрана выберите ту базу данных, которую вы только что создали.
  3. Перейдите во вкладку «Импорт».
  4. Нажмите кнопку «Выберите файл» и укажите на своём компьютере тот самый .sql-файл, который вы скачали со старого хостинга.
  5. Нажмите кнопку «ОК» внизу страницы.

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

Шаг 10. Настраиваем конфигурационный файл

Теперь самый важный шаг, нужно познакомить файлы сайта с новой базой данных. Для этого откройте файл configuration.php в корневой папке сайта на новом хостинге (вы можете сделать это через файловый менеджер ispmanager или скачать файл по FTP, отредактировать и загрузить обратно).

Найдите в нём строки с настройками подключения к базе данных и замените их на новые данные:

public $host = ‘localhost’;
public $user = ‘новое_имя_пользователя’;
public $password = ‘новый_пароль’;
public $db = ‘новое_полное_имя_базы_данных’;

Обратите внимание:

  • $host почти всегда должен быть localhost или 0.0.1. Это означает, что база данных находится на том же сервере, что и файлы сайта.
  • $db — это полное имя базы данных, которое вы создали на новом хостинге (с префиксом логина).
  • Проверьте, нет ли лишних пробелов или символов в строках. Даже один лишний пробел может вызвать ошибку.

Шаг 11. Исправляем пути к логам и временным файлам

В файле configuration.php есть ещё две важные строки, которые нужно проверить:

public $log_path = ‘/var/www/example.com/logs’;
public $tmp_path = ‘/var/www/example.com/tmp’;

Это пути к папкам, где Joomla хранит логи ошибок и временные файлы. На новом хостинге эти пути, скорее всего, будут другими.

Вам нужно заменить /var/www/example.com/ на актуальный путь к корневой папке вашего сайта на новом хостинге. Как его узнать?

  • В ispmanager зайдите в раздел «Сайты», найдите свой домен и посмотрите, какой путь указан как «Документы сайта» или «Корневая директория».
  • Обычно это выглядит как /var/www/u1234567/data/www/ваш-домен или /home/u1234567/www/ваш-домен.

Подставьте этот путь вместо example.com в обеих строках.

Шаг 12. Очищаем кэш

Если на вашем сайте настроено кэширование, старые кэшированные файлы могут помешать корректной работе после переноса. Чтобы избежать проблем:

  1. Перейдите в «Менеджер файлов» в панели ispmanager.
  2. Найдите в корневой папке сайта папку cache.
  3. Откройте её и удалите все файлы и папки внутри, кроме самой папки cache (её удалять не нужно).

В некоторых случаях кэш может храниться и в других папках, например, administrator/cache. Лучше очистить все кэш-папки, которые найдёте.

Проверяем и запускаем сайт

Шаг 13. Проверяем работоспособность до смены DNS

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

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

  1. Откройте файл hosts на вашем компьютере. В Windows он находится по пути C:\Windows\System32\drivers\etc\hosts, в macOS и Linux /etc/hosts.
  2. Добавьте в конец файла строку:
    IP-адрес_нового_сервера ваш-домен
  3. Сохраните файл (в Windows для этого нужны права администратора).
  4. Очистите кэш браузера перед тем, как открывать сайт.
  5. Откройте сайт в браузере, вы должны увидеть его в том виде, в каком он был на старом хостинге.

Если сайт открывается и работает корректно, поздравляю, перенос прошёл успешно!

Шаг 14. Меняем DNS-записи

Когда вы убедились, что всё работает, пора сделать сайт доступным для всех посетителей. Для этого нужно поменять DNS-записи домена, указать, что теперь сайт обслуживается новым хостингом:

  1. Зайдите в панель управления вашего регистратора домена.
  2. Найдите раздел «Управление DNS» или «Делегирование домена».
  3. Замените старые NS-записи на те, которые предоставил ваш новый хостинг-провайдер. Обычно они выглядят как newhosting.ru и ns2.newhosting.ru.
  4. Сохраните изменения.

После этого нужно подождать от нескольких часов до 24-48 часов, пока изменения DNS распространятся по всему интернету. В это время сайт может быть доступен то со старого, то с нового сервера это нормально.

Ошибки после переноса Joomla

Ошибка 500. Internal Server Error

Это, пожалуй, самая распространённая ошибка при переносе Joomla, она означает, что на сервере произошла внутренняя ошибка, но сервер не может сказать конкретно, какая именно.

Самая частая причина, неверно указаны данные для подключения к базе данных в файле configuration.php.

Что делать:

Ещё раз проверьте все параметры подключения в configuration.php:

  • $host — должно быть localhost или 0.0.1.
  • $user — имя пользователя базы данных.
  • $password — пароль пользователя.
  • $db — полное имя базы данных (с префиксом логина хостинга).

Проверьте, нет ли лишних пробелов или скрытых символов.

Если вы не уверены в пароле, вы можете посмотреть или изменить его в панели управления хостингом в разделе «Базы данных».

Если данные верны, а ошибка не исчезает, нужно узнать точную причину:

В файле configuration.php найдите строку:

public $error_reporting = ‘default’;

  1. Измените значение default на maximum.
  2. Сохраните файл и обновите страницу в браузере.
  3. Теперь вместо общей ошибки 500 вы увидите конкретное описание проблемы, что именно пошло не так.

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

Ошибка 403. Forbidden (доступ запрещён)

Эта ошибка означает, что сервер не может показать страницу, потому что у него нет прав доступа к файлам сайта.

Причины могут быть разными:

  • Корневая папка сайта отсутствует или в ней нет файлов.
  • На файлы или папки установлены некорректные права доступа.

Что делать:

  1. Проверьте, что в корневой папке сайта есть файлы (хотя бы index.php и configuration.php).
  2. Проверьте права доступа на файлы и папки:
    • На файлы должны быть права 644 (или rw-r—r—).
    • На папки должны быть права 755 (или rwxr-xr-x).
  3. Если права отличаются, измените их. В ispmanager это можно сделать через файловый менеджер: кликните правой кнопкой по файлу или папке, выберите «Изменить права» и установите нужные значения.

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

Если вы не уверены в своих силах, если сайт сложный или если время поджимает, лучше доверить перенос профессионалам. Многие хостинг-провайдеры предлагают бесплатную помощь с переносом сайтов. Специалисты сделают всё быстро, аккуратно и с гарантией, что сайт будет работать.

Удачи с переездом! Пусть ваш сайт работает стабильно и быстро на новом месте.

Оцените статью
Рейтинг хостингов
Добавить комментарий