XOOPS 2.7.0 Огляд сумісності для цього посібника
Цей документ містить перелік змін, необхідних у цьому сховищі, щоб Посібник зі встановлення відповідав XOOPS 2.7.0.
Основа огляду:
- Поточний репозиторій посібника:
L:\GitHub\XoopsDocs\xoops-installation-guide - Ядро XOOPS 2.7.0 перевірено за адресою:
L:\GitHub\MAMBAX7\CORE\XoopsCore27 - Первинні джерела 2.7.0 перевірені:
README.mdrelease_notes.txthtdocs/install/language/english/welcome.phphtdocs/install/include/config.phphtdocs/install/include/page.phphtdocs/install/class/pathcontroller.phphtdocs/install/page_dbsettings.phphtdocs/install/page_configsave.phphtdocs/install/page_siteinit.phphtdocs/install/page_end.phphtdocs/mainfile.dist.phpupgrade/preflight.phpupgrade/README.mdupgrade/upd_2.5.11-to-2.7.0/index.php
Сфера дії
Section titled “Сфера дії”Це репо наразі містить:
- Файли англійської розмітки кореневого рівня, які використовуються як основний посібник.
- Часткова копія
en/. - Повні дерева книг
de/іfr/з власними активами.
Файли кореневого рівня потребують першого проходу. Після цього еквівалентні зміни потрібно віддзеркалити в de/book/ і fr/book/. Дерево en/ також потребує очищення, оскільки здається, що воно підтримується лише частково.
1. Зміни глобального сховища
Section titled “1. Зміни глобального сховища”1.1 Версії та метадані
Section titled “1.1 Версії та метадані”Оновіть усі посилання на довідковий рівень із XOOPS 2.5.x до XOOPS 2.7.0.
Постраждалі файли:
README.mdSUMMARY.md— первинний живий ТОС для кореневого керівництва; навігаційні мітки та заголовки розділів мають відповідати новим назвам розділів і перейменованому розділу Historical Upgrade Notesen/README.mden/SUMMARY.mdde/README.mdde/SUMMARY.mdfr/README.mdfr/SUMMARY.mdchapter-2-introduction.mdabout-xoops-cms.mdappendix-1-working-with-the-new-admin-gui-our-dashboard.mdappendix-5-increase-security-of-your-xoops-installation.md- локалізовані
de/book/*.mdіfr/book/*.md
Необхідні зміни:
- Змінити
for XOOPS 2.5.7.xнаfor XOOPS 2.7.0. — Оновлено рік авторського права з2018на2026. — Замінено старі посилання на XOOPS 2.5.x і 2.6.0, де вони описують поточний випуск. — Замініть інструкції із завантаження часів SourceForge на GitHub Випуски:https://github.com/XOOPS/XoopsCore27/releases
1.2 Оновлення посилання
Section titled “1.2 Оновлення посилання”about-xoops-cms.md і локалізовані файли 10aboutxoops.md все ще вказують на старі місця 2.5.x і 2.6.0 GitHub. Ці посилання потрібно оновити до поточних розташувань проекту 2.7.x.
1.3 Оновлення знімка екрана
Section titled “1.3 Оновлення знімка екрана”Усі знімки екрана, на яких показано програму встановлення, інтерфейс оновлення, інформаційну панель адміністратора, засіб вибору теми, засіб вибору модуля та екрани після встановлення застаріли.
Постраждалі дерева активів:
.gitbook/assets/en/assets/de/assets/fr/assets/
Це повне оновлення, а не часткове. Програма встановлення 2.7.0 використовує інший макет на основі Bootstrap і іншу візуальну структуру.
2. Розділ 2: Вступ
Section titled “2. Розділ 2: Вступ”Файл:
chapter-2-introduction.md
2.1 Необхідно переписати системні вимоги
Section titled “2.1 Необхідно переписати системні вимоги”У поточному розділі йдеться лише про Apache, MySQL та PHP. XOOPS 2.7.0 має явні мінімуми:
| Компонент | 2.7.0 мінімум | 2.7.0 рекомендація |
|---|---|---|
| PHP | 8.2.0 | 8,4+ |
| MySQL | 5.7.8 | 8,4+ |
| Веб-сервер | Будь-який сервер, що підтримує необхідний PHP | Рекомендовано Apache або Nginx |
Примітки для додавання:
- IIS все ще вказано у програмі встановлення як можливий, але Apache і Nginx є рекомендованими прикладами. — У примітках до випуску також зазначено сумісність MySQL 9.0.
2.2 Додайте обов’язковий і рекомендований контрольний список розширень PHP
Section titled “2.2 Додайте обов’язковий і рекомендований контрольний список розширень PHP”Програма встановлення 2.7.0 тепер відокремлює жорсткі вимоги від рекомендованих розширень.
Необхідні перевірки, показані установником:
- MySQLi
- Сесія
- PCRE
- фільтр
file_uploads- інформація про файл
Рекомендовані розширення:
- рядок mb
- міжн
- iconv
- xml
- zlib
- gd
- exif
- завиток
2.3 Видалення інструкцій контрольної суми
Section titled “2.3 Видалення інструкцій контрольної суми”Поточний крок 5 описує checksum.php і checksum.mdi. Ці файли не є частиною XOOPS 2.7.0.
Дія:
— Повністю видаліть розділ перевірки контрольної суми.
2.4 Оновлення пакета та інструкції щодо завантаження
Section titled “2.4 Оновлення пакета та інструкції щодо завантаження”Збережіть опис макета пакета docs/, extras/, htdocs/, upgrade/, але оновіть текст завантаження та підготовки, щоб відобразити поточні очікування щодо шляху запису:- mainfile.php
uploads/uploads/avatars/uploads/files/uploads/images/uploads/ranks/uploads/smilies/xoops_data/caches/xoops_data/caches/xoops_cache/xoops_data/caches/smarty_cache/xoops_data/caches/smarty_compile/xoops_data/configs/xoops_data/configs/captcha/xoops_data/configs/textsanitizer/xoops_data/data/xoops_data/protector/
Посібник наразі недооцінює це.
2.5 Замінити мову SourceForge translation/download
Section titled “2.5 Замінити мову SourceForge translation/download”Поточний текст все ще говорить про відвідування XOOPS на SourceForge для інших мовних пакетів. Його потрібно замінити поточними інструкціями щодо завантаження project/community.
3. Розділ 3: Перевірка конфігурації сервера
Section titled “3. Розділ 3: Перевірка конфігурації сервера”Файл:
chapter-3-server-configuration-check.md
Необхідні зміни:
- Перепишіть опис сторінки навколо поточного двоблокового макета:
- Вимоги
- Рекомендовані розширення
- Замінити старий скріншот.
- Чітко задокументуйте перелічені вище перевірки вимог.
4. Розділ 4: Обирайте правильний шлях
Section titled “4. Розділ 4: Обирайте правильний шлях”Файл:
chapter-4-take-the-right-path.md
Необхідні зміни:
- Додайте нове поле
Cookie Domain. — Оновити назви та описи полів шляху відповідно до 2.7.0:- XOOPS Кореневий шлях
- XOOPS Шлях даних
- XOOPS Шлях бібліотеки
- XOOPS URL
- Домен файлів cookie
— Додайте примітку, що для зміни шляху бібліотеки тепер потрібен дійсний автозавантажувач Composer на
vendor/autoload.php.
Це справжня перевірка сумісності у версії 2.7.0, і її слід чітко задокументувати. У поточному посібнику Composer взагалі не згадується.
5. Розділ 5: Підключення до бази даних
Section titled “5. Розділ 5: Підключення до бази даних”Файл:
chapter-5-database-connections.md
Необхідні зміни:
- Залиште заяву, що підтримується лише MySQL.
- Оновіть розділ конфігурації бази даних, щоб відобразити:
- набір символів за замовчуванням тепер
utf8mb4 - вибір сортування динамічно оновлюється при зміні кодування — Замініть знімки екрана для сторінок підключення до бази даних і конфігурації.
- набір символів за замовчуванням тепер
Поточний текст про те, що кодування та сортування не потребують уваги, є занадто слабким для 2.7.0. Слід принаймні згадати нове значення за замовчуванням utf8mb4 і селектор динамічного сортування.
6. Розділ 6: Остаточна конфігурація системи
Section titled “6. Розділ 6: Остаточна конфігурація системи”Файл:
chapter-6-final-system-configuration.md
6.1 Згенеровані конфігураційні файли змінено
Section titled “6.1 Згенеровані конфігураційні файли змінено”Наразі в посібнику зазначено, що інсталятор пише mainfile.php і secure.php.
У 2.7.0 він також встановлює конфігураційні файли в xoops_data/configs/, зокрема:
xoopsconfig.php- конфігураційні файли captcha
- конфігураційні файли textsanitizer
6.2 Існуючі конфігураційні файли в xoops_data/configs/ не перезаписуються
Section titled “6.2 Існуючі конфігураційні файли в xoops_data/configs/ не перезаписуються”Поведінка без перезапису є областю, а не глобальною. Два різних шляхи коду в файли конфігурації page_configsave.php записують:
writeConfigurationFile()(викликається в рядках 59 і 66) завжди відновлюєxoops_data/data/secure.phpіmainfile.phpз введених даних майстра. Немає перевірки існування; наявна копія замінена.copyConfigDistFiles()(викликаний у рядку 62, визначений у рядку 317) лише копіює файлиxoops_data/configs/(xoopsconfig.php, конфігурації captcha, конфігурації textsanitizer) якщо місце призначення ще не існує.
Переписаний розділ має чітко відображати обидві поведінки:
- Для
mainfile.phpіsecure.php: попереджайте, що будь-які ручні редагування цих файлів буде перезаписано під час повторного запуску інсталятора. - Для файлів
xoops_data/configs/: поясніть, що локальні налаштування зберігаються під час повторних запусків і оновлень, і що для відновлення надісланих параметрів за замовчуванням потрібно видалити файл і повторно запустити (або скопіювати відповідний.dist.phpвручну).
Не узагальнюйте «існуючі файли зберігаються» для всіх файлів конфігурації, написаних інсталятором — це неправильно та введе в оману адміністраторів, які редагують mainfile.php або secure.php.
6.3 Змінено обробку HTTPS і зворотного проксі
Section titled “6.3 Змінено обробку HTTPS і зворотного проксі”Згенерований mainfile.php тепер підтримує ширше виявлення протоколу, включаючи заголовки зворотного проксі. У посібнику слід згадати про це замість прямого виявлення http або https.
6.4 Підрахунок таблиці неправильний
Section titled “6.4 Підрахунок таблиці неправильний”У поточному розділі сказано, що новий сайт створює таблиці 32.
XOOPS 2.7.0 створює таблиці 33. Відсутня таблиця:
tokens
Дія:- Оновіть кількість з 32 до 33.
- Додайте
tokensдо списку таблиць.
7. Розділ 7: Параметри адміністрування
Section titled “7. Розділ 7: Параметри адміністрування”Файл:
chapter-7-administration-settings.md
7.1 Опис інтерфейсу користувача пароля застарів
Section titled “7.1 Опис інтерфейсу користувача пароля застарів”Програма встановлення все ще включає генерацію пароля, але тепер також містить:
- вимірювач надійності пароля на основі zxcvbn
- етикетки візуальної міцності
- 16-символьний генератор і процес копіювання
Оновіть текст і знімки екрана, щоб описати поточну панель паролів.
7.2 Перевірка електронної пошти тепер примусова
Section titled “7.2 Перевірка електронної пошти тепер примусова”Електронна адреса адміністратора підтверджується FILTER_VALIDATE_EMAIL. У розділі слід згадати, що недійсні значення електронної пошти відхиляються.
7.3 Розділ ліцензійного ключа неправильний
Section titled “7.3 Розділ ліцензійного ключа неправильний”Це одне з найважливіших фактологічних виправлень.
Поточний посібник говорить:
- є
License System Key - зберігається в
/include/license.php /include/license.phpмає бути доступним для запису під час встановлення
Це вже не точно.
Що насправді робить 2.7.0:
- інсталяція записує ліцензійні дані в
xoops_data/data/license.php htdocs/include/license.phpтепер просто застаріла оболонка, яка завантажує файл ізXOOPS_VAR_PATH- старе формулювання про надання
/include/license.phpможливості для запису має бути видалено
Дія:
- Перепишіть цей розділ, а не видаляйте його.
— Оновити шлях від
/include/license.phpдоxoops_data/data/license.php.
7.4 Список тем застарів
Section titled “7.4 Список тем застарів”Поточний посібник все ще посилається на Zetagenesis і старший набір тем 2,5 епохи.
Теми, присутні в XOOPS 2.7.0:
defaultxbootstrapxbootstrap5xswatch4xswatch5xtailwindxtailwind2
Також зауважте:
xswatch4— поточна тема за замовчуванням, вставлена даними інсталятора.- Zetagenesis більше не є частиною пакетного списку тем.
7.5 Список модулів застарів
Section titled “7.5 Список модулів застарів”Модулі в пакеті 2.7.0:
system— автоматично встановлюється під час заповнення таблиці/вставки даних. Завжди присутній, ніколи не видно в панелі вибору.debugbar— можна вибрати на етапі встановлення.pm— можна вибрати на етапі встановлення.profile— можна вибрати на етапі встановлення.protector— можна вибрати на етапі встановлення.
Важливо: сторінка інсталятора модуля (htdocs/install/page_moduleinstaller.php) створює свій список кандидатів, повторюючи XoopsLists::getModulesList() і відфільтровуючи все, що вже є в таблиці модулів (рядки 95-102 містять $listed_mods; рядок 116 пропускає будь-який каталог у цьому списку). Оскільки system інсталюється перед виконанням цього кроку, він ніколи не відображається як прапорець.
Необхідні зміни в керівництві:
- Перестаньте говорити, що є лише три модулі в комплекті.
- Опишіть етап інсталяції як показ чотирьох доступних для вибору модулів (
debugbar,pm,profile,protector), а не п’яти. - Задокументуйте
systemокремо як завжди встановлений основний модуль, який не відображається в інструменті вибору. — Доданоdebugbarдо опису пакетного модуля як нового в 2.7.0. - Зауважте, що попередній вибір модулів інсталятора за замовчуванням тепер порожній; модулі доступні для вибору, але попередньо не перевірені конфігурацією інсталятора.
8. Розділ 8: Готово до роботи
Section titled “8. Розділ 8: Готово до роботи”Файл:
chapter-8-ready-to-go.md
8.1 Процес очищення встановлення потребує переписування
Section titled “8.1 Процес очищення встановлення потребує переписування”У поточному посібнику сказано, що програма встановлення змінює назву папки встановлення на унікальне ім’я.
Це все ще актуально, але механізм змінився:
- зовнішній сценарій очищення створюється в корені веб-сайту
- остання сторінка запускає очищення через AJAX
- папку встановлення перейменовано на
install_remove_<unique suffix> - резервний варіант до
cleanup.phpвсе ще існує
Дія:
- Оновіть пояснення.
- Дотримуйтеся простих інструкцій для користувача: видаліть перейменований каталог встановлення після встановлення.
8.2 Посилання на додаток до інформаційної панелі адміністратора застаріли
Section titled “8.2 Посилання на додаток до інформаційної панелі адміністратора застаріли”Розділ 8 все ще вказує читачам на старий досвід адміністрування часів Oxygen. Це потрібно узгодити з поточними темами адміністратора:
defaultdarkmoderntransition
8.3 Вказівки щодо редагування шляху після встановлення потребують виправлення
Section titled “8.3 Вказівки щодо редагування шляху після встановлення потребують виправлення”Поточний текст повідомляє читачам оновити secure.php визначеннями шляхів. У версії 2.7.0 ці константи шляху визначено в mainfile.php, тоді як secure.php містить безпечні дані. Приклад блоку в цьому розділі слід виправити відповідно.
8.4 Необхідно додати параметри виробництваУ посібнику слід чітко вказати робочі параметри за замовчуванням, які зараз присутні в mainfile.dist.php:
Section titled “8.4 Необхідно додати параметри виробництваУ посібнику слід чітко вказати робочі параметри за замовчуванням, які зараз присутні в mainfile.dist.php:”XOOPS_DB_LEGACY_LOGмає залишитисяfalseXOOPS_DEBUGмає залишитисяfalse
9. Розділ 9: Оновлення наявної інсталяції XOOPS
Section titled “9. Розділ 9: Оновлення наявної інсталяції XOOPS”Файл:
chapter-9-upgrade-existing-xoops-installation.md
Цей розділ потребує найбільшого переписування.
9.1 Додайте обов’язковий Smarty 4 передпочатковий етап
Section titled “9.1 Додайте обов’язковий Smarty 4 передпочатковий етап”Потік оновлення XOOPS 2.7.0 тепер примусово запускає процес попередньої перевірки перед завершенням оновлення.
Новий необхідний потік:
- Скопіюйте каталог
upgrade/у корінь сайту. - Запустіть
/upgrade/preflight.php. - Відскануйте
/themes/і/modules/на предмет старого синтаксису Smarty. - Використовуйте необов’язковий режим відновлення, де це необхідно.
- Проведіть повторний запуск, поки не стане чистим.
- Продовжуйте рух до
/upgrade/.
У поточному розділі про це взагалі не згадується, що робить його несумісним із керівництвом 2.7.0.
9.2 Замінити розповідь про злиття вручну версії 2.5.2
Section titled “9.2 Замінити розповідь про злиття вручну версії 2.5.2”У поточному розділі все ще описується ручне оновлення у стилі 2.5.2 із злиттям фреймворків, примітками AltSys та реструктуризацією файлів, керованою вручну. Його слід замінити фактичною послідовністю оновлення 2.7.x із release_notes.txt і upgrade/README.md.
Рекомендований план розділу:
- Резервне копіювання файлів і бази даних.
- Вимкніть сайт.
- Скопіюйте
htdocs/поверх живого кореня. - Скопіюйте
htdocs/xoops_libу шлях активної бібліотеки. - Скопіюйте
htdocs/xoops_dataв активний шлях даних. - Скопіюйте
upgrade/у кореневу папку. - Запустіть
preflight.php. - Запустіть
/upgrade/. - Повні підказки програми оновлення.
- Оновіть модуль
system. - Оновіть
pm,profileіprotector, якщо встановлено. - Видалити
upgrade/. - Увімкніть сайт знову.
9.3 Задокументуйте реальні зміни оновлення 2.7.0
Section titled “9.3 Задокументуйте реальні зміни оновлення 2.7.0”Оновлення для 2.7.0 включає принаймні такі конкретні зміни:
- створити таблицю
tokens - розширити
bannerclient.passwdдля сучасних хешів паролів - додати налаштування параметрів cookie сесії
- видалити застарілі пакетні каталоги
У посібнику не потрібно розкривати кожну деталь реалізації, але він повинен припинити натякати, що оновлення є лише копією файлу та оновленням модуля.
10. Сторінки історичного оновлення
Section titled “10. Сторінки історичного оновлення”Файли:
upgrading-from-xoops-2.4.5-easy-way.mdupgrading-from-xoops-2.0.-above-2.0.14-and-2.2..mdupgrading-from-any-xoops-2.0.7-to-2.0.13.2.mdupgrading-a-non-utf-8-site.mdupgrading-xoopseditor-package.md
Статус: структурне рішення вже вирішено — кореневий SUMMARY.md переміщує їх у спеціальний розділ Історичні примітки щодо оновлення, і кожен файл містить виноску «Історична довідка», яка вказує читачам на Розділ 9 для оновлень 2.7.0. Вони більше не є першокласним керівництвом з оновлення.
Залишилася робота (тільки послідовність):
- Переконайтеся, що
README.md(корінь) перелічує їх під тим самим заголовком «Історичні примітки до оновлення», а не під загальним заголовком «Оновлення». - Віддзеркалення того самого поділу в
de/README.md,de/SUMMARY.md,fr/README.md,fr/SUMMARY.mdіen/SUMMARY.md. - Переконайтеся, що кожна сторінка історичного оновлення (корінь і локалізовані копії
de/book/upg*.md/fr/book/upg*.md) містить виноску зі застарілим вмістом, яка посилається на розділ 9.
11. Додаток 1: GUI адміністратора
Section titled “11. Додаток 1: GUI адміністратора”Файл:
appendix-1-working-with-the-new-admin-gui-our-dashboard.md
Цей додаток прив’язаний до GUI адміністратора Oxygen і потребує перепису.
Необхідні зміни:
- замінити всі посилання на Oxygen
- замінити старі скріншоти icon/menu
- документувати поточні теми адміністратора:
- за замовчуванням
- темний
- сучасний
- перехідний
- згадайте поточні можливості адміністрування версії 2.7.0, описані в примітках до випуску:
- можливість перевантаження шаблонів у темах системного адміністратора
- оновлений набір тем адмінки
12. Додаток 2: Завантаження XOOPS через FTP
Section titled “12. Додаток 2: Завантаження XOOPS через FTP”Файл:
appendix-2-uploading-xoops-via-ftp.md
Необхідні зміни:
- видалити специфічні для HostGator і cPanel припущення
- модернізувати формулювання для завантаження файлів
- зауважте, що
xoops_libтепер включає залежності Composer, тому завантажені файли більші і не повинні бути вибірково обрізані
13. Додаток 5: Безпека
Section titled “13. Додаток 5: Безпека”Файл:
appendix-5-increase-security-of-your-xoops-installation.md
Необхідні зміни:- повністю видалити обговорення register_globals
- видалити застарілу мову хост-квитка
- виправте текст дозволів з
404на0444, де передбачено лише читання - оновити обговорення
mainfile.phpіsecure.phpвідповідно до макета 2.7.0 - додати новий постійний контекст безпеки домену cookie:
XOOPS_COOKIE_DOMAIN_USE_PSLXOOPS_COOKIE_DOMAIN
- додати керівництво з виробництва для:
XOOPS_DB_LEGACY_LOGXOOPS_DEBUG
14. Вплив міжмовного обслуговування
Section titled “14. Вплив міжмовного обслуговування”Після виправлення файлів кореневого рівня англійською мовою необхідні еквівалентні оновлення в:
de/book/fr/book/de/README.mdfr/README.mdde/SUMMARY.mdfr/SUMMARY.md
Дерево en/ також потребує перегляду, оскільки воно містить окремий README та набір активів, але, здається, містить лише часткове дерево book/.
15. Пріоритетний порядок
Section titled “15. Пріоритетний порядок”Критично перед випуском
Section titled “Критично перед випуском”- Оновіть посилання на repo/version до 2.7.0.
- Перепишіть розділ 9 навколо справжнього потоку оновлення 2.7.0 і Smarty 4 перед друком.
- Оновіть системні вимоги до PHP 8.2+ і MySQL 5.7.8+.
- Виправте шлях до файлу ліцензійного ключа у розділі 7.
- Правильний опис тем і модулів.
- Виправте кількість таблиць у розділі 6 з 32 на 33.
Важливо для точності
Section titled “Важливо для точності”- Перепишіть вказівки щодо шляху запису.
- Додайте вимогу автозавантажувача Composer до налаштування шляху.
- Оновіть інструкції з кодування бази даних до
utf8mb4. - Виправте вказівки щодо редагування шляхів у розділі 8, щоб константи були задокументовані у правильному файлі.
- Видаліть інструкції контрольної суми.
- Видаліть
register_globalsта інші мертві вказівки PHP.
Очищення якості випуску
Section titled “Очищення якості випуску”- Замініть усі скріншоти інсталятора та адміністратора.
- Перемістіть історичні сторінки оновлення з основного потоку.
- Синхронізувати німецьку та французьку копії після виправлення англійської.
- Очистіть застарілі посилання та дубльовані рядки README.