Оновлення з XOOPS 2.5 до 2.7
:::обережно[спочатку створіть резервну копію] Завжди створюйте резервні копії бази даних і файлів перед оновленням. Без винятків. :::
Що змінилося у 2.7
Section titled “Що змінилося у 2.7”- Потрібен PHP 8.2+ — PHP 7.x більше не підтримується
- Composer-managed dependencies — основні бібліотеки, керовані через
composer.json - Автозавантаження PSR-4 — класи модулів можуть використовувати простори імен
- Improved XoopsObject — новий тип безпеки
getVar(), застарілийobj2Array() - Bootstrap 5 admin — панель адміністратора перебудована за допомогою Bootstrap 5
Контрольний список перед оновленням
Section titled “Контрольний список перед оновленням”- PHP 8.2+ доступний на вашому сервері
- Повна резервна копія бази даних (
mysqldump -u user -p xoops_db > backup.sql) - Повна резервна копія файлів вашої установки
- Список встановлених модулів та їх версії
- Спеціальна тема резервується окремо
Етапи оновлення
Section titled “Етапи оновлення”1. Перевести сайт в режим обслуговування
Section titled “1. Перевести сайт в режим обслуговування”// mainfile.php — add temporarilydefine('XOOPS_MAINTENANCE', true);2. Завантажте XOOPS 2.7
Section titled “2. Завантажте XOOPS 2.7”wget https://github.com/XOOPS/XoopsCore27/releases/latest/download/xoops-2.7.x.zipunzip xoops-2.7.x.zip3. Замініть основні файли
Section titled “3. Замініть основні файли”Завантажте нові файли, за винятком:
uploads/— ваші завантажені файлиxoops_data/— ваша конфігураціяmodules/— встановлені модуліthemes/— ваші темиmainfile.php— конфігурація вашого сайту
rsync -av --exclude='uploads/' --exclude='xoops_data/' \ --exclude='modules/' --exclude='themes/' --exclude='mainfile.php' \ xoops-2.7/ /var/www/html/4. Запустіть сценарій оновлення
Section titled “4. Запустіть сценарій оновлення”Перейдіть до https://yourdomain.com/upgrade/ у своєму браузері.
Майстер оновлення застосує міграцію бази даних.
5. Оновлення модулів
Section titled “5. Оновлення модулів”Модулі XOOPS 2.7 мають бути сумісні з PHP 8.2. Перевірте Module Ecosystem на наявність оновлених версій.
В «Адміністратор» → «Модулі» натисніть Оновити для кожного встановленого модуля.
6. Видаліть режим обслуговування та перевірте
Section titled “6. Видаліть режим обслуговування та перевірте”Видаліть рядок XOOPS_MAINTENANCE із mainfile.php і
переконайтеся, що всі сторінки завантажуються правильно.
Поширені проблеми
Section titled “Поширені проблеми”Помилки “Клас не знайдено” після оновлення
- Запустіть
composer dump-autoloadу корені XOOPS - Очистіть каталог
xoops_data/caches/
Модуль зламався після оновлення
- Перевірте випуски модуля GitHub для версії 2.7-сумісної
- Модуль може потребувати змін коду для PHP 8.2 (застарілі функції, типізовані властивості)
Панель адміністратора CSS зламана
- Очистіть кеш браузера
- Переконайтеся, що
xoops_lib/було повністю замінено під час завантаження файлу