Обновление Joomla c 1.5 до 2.5
Здесь мы опишем общую процедуру перехода с версии Joomla 1.5 к более поздним.
Перед обновлением
Не давайте ввести вас в заблуждение, версии Joomla 1.5 и 1.6 не так уж близки. Joomla 1.6 в течение 3х лет была основной задачей разработчиков. Многие часы разработчиков со всего мира были проведены в попытках собрать в ней всё самое важное. Не смотря на это, основная часть кода такая же как в версии 1.5, большая часть которого была написана с нуля и сравнима с изменениями версий 1.0 и 1.5. Поскольку разница между 1.5 и 2.5 достаточно велика из-за огромных усилий приложенных к разработке 2.5, не существует основного способа обновления. Это что касается миграции. В будущих релизах Joomla (с частотой раз в пол года), такими как 3.0, 3.5 и так далее, нововведения будут более постепенными и основной путь обновления будет продуман. Сейчас, когда версия 2.5 стабильна, мнения сообщества разработчиков Joomla сходятся на jUpgrade (расширение 3го поколения JED, разработанное Matias Aguirre), как на вспомогательном элементе при обновлении. Многие из разработчиков Joomla (в основном волонтёры, которые добровольно тратят на это своё время), самостоятельно дополняли jUpgrade.
jUpgrade делает миграцию с 1.5 к 2.5 возможной. Также существуют и другие способы, которые стоит рассматривать, но мы их не включаем в эту инструкцию.
Давайте начнём!
Убедитесь в совместимости
Прежде, чем приступить, убедитесь, что ваш браузер и ваш сервер совместимы с версией 1.6 и jUpgrade!
Прежде чем начать
Прежде чем мы начнём, давайте подумаем ещё кое о чём:
- Обновлена ли ваша Joomla 1.5 до последней стабильной версии? Одна из самых последних версий это 1.5.26. Обновите до последней, если это не так. jUpgrade не совместим со старыми сборками.
- Все ли ваши расширения поддерживают версию 2.5? Для проверки используйте поиск Каталога Расширений Joomla, там вы увидите какие расширения поддерживают версию 2.5 и 3.0. Пожалуйста помните, что jUpgrade пока не способен обновлять все расширения 3го поколения самостоятельно. Вот список расширений, которые он обновляет: AcyMailing, AdminPraise, Akeeba Backup, BreezingForms, CompoJoomComment, CommunityBuilder, Contact Enhanced, Hikashop, JCE, jEvents, JomSocial, Jumi, K2, Kunena, redFORM, redMEMBER, redSHOP, RSGallery 2, VirtueMart.
- Вносили ли вы какие либо изменения в файлы ядра? Будьте внимательны, все изменения будут утеряны.
- Совместим ли ваш шаблон с версией 2.5? Если нет, будет ли вам комфортно перейти на какой либо из стандартных?
- Присутствует ли локализация в версии на которую вы хотите обновиться? Убедитесь в этом.
- Если у вас права на создание и редактирование файлов и папок Joomla 1.5?
Две главных особенности, которые отличают эти версии следующие:
Контрольный лист доступа и внутренние категории. Прошли дни, когда у гостей и зарегистрированных пользователей были одинаковые права, теперь вы можете разграничивать их. Кроме того с версией 2.5 у вас будет больше возможностей в обращении с контентом и его отображении в категориях. Как бы то ни было, многим пользователям версии 1.5 это не понадобится. Главное решите этот вопрос для себя.
Создайте резервную копию и копию копии!
Пропустить этот момент, пожалуй, самая фатальная ошибка из всех. Если у вас есть резервная копия, вы можете откатить изменения когда захотите. Если же вы не последуете этому совету, в случае если что-то пойдёт не так, процесс восстановления данных выльется в трату времени и, возможно, денег.
Обновление с jUpgrade
Загрузите jUpgrade
Загрузите последнюю версию jUpgrade. Рекомендуется всегда использовать последнюю версию, особенно, когда разработка ещё в процессе.
Дополнительная среда тестирования
Если вы сомневаетесь уже на этом этапе, то, вероятно, следует создать среду тестирования.
Устанавливаем XAMPP
XAMPP достаточно прост в установке, объединяющий в себе веб сервера Apache,PHP, Xdebug и базу данных MySql. Это позволяет создать условия для запуска Joomla на локальном компьютере. На официальном сайте XAMPP (http://www.apachefriends.org/en/xampp.html) скачайте пакет установки. Он доступен для Windows, MAC OS X, Linux и Solaris.
Есть важный момент, касающийся XAMPP и Skype. Apache и Skype используют 80 порт, как альтернативный порт для входящих соединений. Если вы используете Skype, зайдите в настройки/дополнительно/расширенные настройки/соединение и снимите отметку в чек-боксе напротив опции “Использовать порты 80 и 443 в качестве входящих альтернативных”. Если Apache запускается как служба, он займёт 80й порт до того, как запустится Skype и проблем не возникнет, но лучше подстраховаться.
Установка на Windows
Установка на Windows достаточно проста. Вы можете использовать пакет установки XAMPP. Подробно установка описана здесь (http://www.apachefriends.org/en/xampp-windows.html).
Рекомендованный путь для установки на Windows таков: "c:\xampp" (а не в "c:\program files"). Если выберете его, Joomla установится в папку "c:\xampp\htdocs" (по желанию весь веб контент также сохраняется в папку “htdocs”).
Если у вас несколько http серверов (таких как ISS) вы можете изменить порт xampp. В <xamppDir>\apache\conf\httpd.conf измените строку Listen 80 в Listen [номер порта] (например “Listen 8080”).
Протестируйте локальный сервер XAMPP
Откройте ваш браузер и перейдите на страницу http://localhost/
index.php перенаправит вас на http://localhost/xampp
Там вы найдёте инструкции по смене пары логин/пароль со значений по умолчанию. На ПК не подключенном к сети менять или не менять пароль решайте сами.
EasyPHP
Другим способом является установка EasyPHP. Не нужно ничего настраивать, там всё уже готово. Вам только нужно загрузить и установить. Устанавливается полная среда WAMP для PHP разработчиков на Windows, включающая PHP, Apache, MySql, phpMyAdmin, xdebug... Абсолютная, готовая к работе среда PHP разработчика.
Установка jUpgrade
Перейдите к административной панели вашего сайта (yoursite.ru/administator)
Расширения >> Установка / Удаление
Browse>> Выбираем com_jupgrade>> Загрузить и установить
Включаем плагин обновления Mootools
1. Заходим в менеджер плагинов
2. Ищем “System Mootools Upgrade”
3. Включаем плагин.
Функционал jUpgrade напрямую зависит от того будет ли включен плагин обновления Mootools.
Настройка параметров
Версия jUpgrade 2.5 поддерживает миграцию на Joomla 1.7 и 2.5. Настройте параметры, перейдя в Компоненты > jUpgrade > Настройки.
Global
- Distribution - здесь указываем на какую версию переходим 1.6 или 2.5
- Prefix for old database - ваш нынешний префикс
- Prefix for new database - префикс для вашего будущего сайта
Skips (что пропускаем)
- Skip checks - пропускаем предмиграционную проверку
- Skip download - пропускаем загрузку пакета (Важно: пакет установки уже должен находиться в папке Temp)
- Skip decompress - пропускаем декомпрессию загруженного пакета установки (Важно: если собираетесь пропустить, пакет уже должен быть загружен и распакован в корневой паке сайта в каталоге jupgrade)
Templates (шаблоны)
- Keep original positions - Оставляем нынешнее положение для модулей
Debug
- Enable Debug - Включаем, если хотим наблюдать за отчётами процесса миграции, это может быть полезно, если возникнут какие-то проблемы.
Миграция
Компоненты>> jUpgrade
Начинаем обновление
Не сворачиваем окно, пока не закончит устанавливаться. Листаем вниз, чтобы проверить закончена ли установка.
Помните, что jUpgrade не переносит шаблоны и их дополнения. Устанавливаются только стандартные шаблоны. Остальные необходимо переносить вручную.
Тем временем
Даже если процесс миграции не был 100% успешным, ваша Joomla 1.5 по-прежнему не тронута и все пользователи в целости и сохранности. Можете проверить пользовательскую и административные части сайта.
Так а что произошло? jUpgrade загружает версию Joomla, которую вы выбрали в директорию jupgrade в корень установочной папки Joomla 1.5. Затем распаковывает все файлы. После извлечения устанавливается новая версия Joomla и мигрирует вашу старую базу данных в созданную ей новую. Ваш новый сайт будет установлен в www.yoursite.ru/jupgrade, при условии что Joomla 1.5 в корне html.
Проверьте установку Joomla
Пожалуйста, убедитесь что всё установлено и настроено правильно.
Вот общий чек-лист:
- Баннеры
- Категории
- Контакты
- Материалы
- Меню
- Модули
- Новостные ленты
- Пользователи
Ссылки на другие сайты, вероятно, не изменятся, но внутренние ссылки, возможно, будут затронуты. Помочь убедиться в их правильной работе может такая программа как Xenu's Link Sleuth.
Шаблоны
Работы над функцией обновления шаблонов jUpgrade ещё ведутся и она всё ещё может работать неправильно. Позиции модулей можете менять в менеджере модулей.
Если у вас были пользовательские шаблоны или отличные от шаблонов по умолчанию, они должны были быть скопированы с версии 1.5. Если так, их теперь следует обновить, модифицировать и обнаружить.
Создайте резервную копию Joomla
Если всё в порядке, создайте резервную копию новой Joomla.
Краткий обзор оставшихся шагов
Итак, быстро пробежим по тому, что осталось сделать:
- Перенесём нашу Joomla 1.5 в папку, например “на всякий случай”.
- Перенесём новую Joomla в html папку.
Делать это следует именно в таком порядке, чтобы не перемешать файлы друг с другом, а многие из них могут заменить друг друга и у вас будут большие неприятности. Ваш сайт, возможно, ещё будет работать, но вот система безопасности уже трещит по швам.
Выходим на финиш
Далее логинимся на хостинге или в FTP клиенте. Далее следует процедура (займёт пол минуты, если прочитаете следующие шаги):
- Создайте папку (Например “Мойстарыйсайт”) для Joomla 1.5, установленной в html корне.
- Выделите все папки (**кроме jupgrade**) и файлы в html корне и переместите их в “Мойстарыйсайт”
- Выделите все файлы и папки в jupgrade и переместите в корень html
- Дважды проверьте пользовательскую и административную части сайта.
Проверяемся на ошибки
Администратор> Сайт> Настройки> Параметры отладки > Система отладки > Да.
Загрузите страницу веб сайта. Есть ошибки? Если не отображается контент страницы или вы видите какие либо отчёты об ошибках, помните, что ошибки могут быть вызваны миграцией.
Есть ли html директория у вашего шаблона? Если да, то в этом и причина ошибки. Есть быстрый способ проверить - переименуйте временно templates/<template_name>/html directory.
Другим вариантом проверки может послужить переход на один из шаблонов по умолчанию.