Обновление TYPO3
Недавно решил обновить TYPO3 на одном сайте. Так как создавался он достаточно давно, то версия системы там была 4.2.6 при том что сейчас стабильной является уже 4.7. Вообще обновление TYPO3 — процедура со своими нюансами, особенно, если это касается более ранних версий. Благо в интернете есть достаточно информации по этому процессу — в частности можно почитать wiki страницу про Upgrade на typo3.org. Там собраны все необходимые моменты как общие, так и касаемо различных версий TYPO3. В данном посте я рассмотрю процесс обновления TYPO3 с версии 4.2.6 до ветки 4.5 LTS (long term support). Почему 4.5 спросите вы? — все очень просто, для версий 4.6 и старше требуется наличие на хостинге установленного PHP 5.3 :)
1. Перед тем как приступить к установке обновления нужно обязательно сделать бэкап сайта, причем полный — копируете как файлы с FTP + базу данных. Я уже как-то рассказывал про бэкап блога через phpmyadmin в этом случае также используем данный скрипт работы с БД.
2. После того как все данные сохранены в надежном месте нужно определиться с новой версией TYPO3, которую вы собираетесь установить. Про выбор версии TYPO3 уже был небольшой пост, где можете узнать почти все об этом вопросе. Могу лишь добавить. что лучше ставить самый актуальный стабильный (!) вариант, но при этом обязательно помнить и ориентироваться на проверить параметры хостинга.
3. Все варианты обновления TYPO3 содержат так называемые «Общие шаги» и некоторые частные нюансы. В статье про Upgrade на wiki все эти детали подробно рассмотрены. Для начала поговорим про общие моменты.
3.1. Конвертируем глобальные экстеншены (модули) в локальные. Раньше глобальные расширения сохранялись в директории typo3/ext/, теперь нужно перенести их в typo3conf/ext/. Для этого:
- Заходим в менеджер расширений (Extension Manager).
- Деинсталируем глобальные модули.
- Удаляем файлы этих экстеншенов из директории typo3/ext/ вместе с ней.
- Переустанавливаем все модули заново как локальные.
В принципе, в моем случае в TYPO3 4.2.6 этих глобальный экстеншенов уже не было, папка typo3/ext/ оказалась пустой, видимо, это справедливо для очень ранних версий.
3.2. Непосредственно установка новой версии TYPO3. Если вы используете симлинки (symbolic links) тогда загружаете TYPO3 в новую директорию, а потом меняете ссылку на нее со старой. Если физически исходные файлы располагаются в корневой директории, тогда нужно перезаписать их новыми, только что скачанными. В вики немного непонятно сказано — то ли убрать симлинки, то ли удалить содержимое из папок typo3, media, tslib, t3lib вместе с файлами showpic.php и index.php — точно не понял, я просто перезалил исходники (Source) поверху.
3.3. Обновление базы данных.
- Для начала вам нужно зайти в Install Tool, который можно найти по адресу typo3/install. Если там сказано, что он отключен, то создайте пустой файл ENABLE_INSTALL_TOOL и загрузите его в директорию folder typo3conf/.
- Далее в этом инструменте заходим в раздел Database Analyzer, где кликаем по «Update required tables» а также ссылкам «COMPARE» и «IMPORT» — примените все предложенные изменения (у себя я нашел только compare и import и обновил с их помощью нужные таблицы базы данных).
- Заходим в секцию Basic Configuration. Если там не установлен параметр Encryption Key, то нужно его задать.
- Следующий раздел — Upgrade Wizard, в котором задается так называемая совместимость версий. Теоретически вы можете обновить TYPO3 до более поздних релизов, но сама система будет работать по принципу предыдущих версий. Собственно для завершения процесса обновления нужно принять и подтвердить некоторые изменения. Кстати, это может повлиять на отображение сайта во фронтенде — поэтому действуйте аккуратно.
- Финальный шаг — в секции «Edit files in typo3conf» удаляете все файлы кэша temp_CACHED*.
На этом общая часто обновления TYPO3 закончена, в wiki найдете отдельно информацию про апдейт системы для разных версий, например с 4.1 до 4.2, с 4.3 до 4.4. и т.п. Каждый пункт содержит какую-то специфическую информацию по изменением, которые привносит очередная версия. Также есть информация про обновление с помощью шела (shell) с указанием конкретных команд и их описанием — вики реально мощная помощь по апгрейду TYPO3!
Напоследок пару слов конкретно про обновление до TYPO3 4.5. Как я уже говорил выше изначально у меня была версия 4.2.6, но я не стал последовательно апдейтить до 4.3, 4.4, а сразу загрузил исходники 4.5. По описанию особых «резких переходов» в релизах не было, поэтому решил «перепрыгнуть» при обновлении сразу на пару веток вперед. В итоге все получилось, вроде бы, удачно — постепенно прошел все пункты «Общей установки» от обновления базы данных до нюансов совместимости версий. В wiki есть информация про некоторые особенности 4.5 релиза — основное, что здесь теперь по умолчанию используется кодировка UTF-8, а остальные постепенно, как я понял, будут убираться.
Теоретически на этом обновление TYPO3 можно считать законченным, остается лишь парочка задач, что нужны выполнить после него.
- Во-первых, проверить наличие новых версия для всех плагинов и обновиться, если не сделали этого раньше. В менеджере экстеншенов есть полезная опция для этой цели — «Check for extentions update».
- Во-вторых, в этом же менеджере нужно выбрать пункт «Translation handling» и загрузить новые переводы для выбранного вами языка.
Теперь точно все. В wiki по обновлению TYPO3 найдете некоторые заметки, пояснения и другую информацию, которая может пригодиться в этом нелегком деле — начиная от особенностей новых версий и заканчивая возможными изменениями настроек системы для более свежих версий. Реально полезное чтиво, помогающее в работе.