コンテンツにスキップ

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.md
    • release_notes.txt
    • htdocs/install/language/english/welcome.php
    • htdocs/install/include/config.php
    • htdocs/install/include/page.php
    • htdocs/install/class/pathcontroller.php
    • htdocs/install/page_dbsettings.php
    • htdocs/install/page_configsave.php
    • htdocs/install/page_siteinit.php
    • htdocs/install/page_end.php
    • htdocs/mainfile.dist.php
    • upgrade/preflight.php
    • upgrade/README.md
    • upgrade/upd_2.5.11-to-2.7.0/index.php

このリポジトリは現在以下を含んでいます:

  • メインガイドとして使用されているルートレベルの英語 Markdown ファイル。
  • 部分的な 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.md
  • SUMMARY.md — ルートガイドの主要なライブ目次。ナビゲーションラベルとセクション見出しは新しいチャプタータイトルと名前変更された「履歴的アップグレード注記」セクションと一致する必要があります
  • en/README.md
  • en/SUMMARY.md
  • de/README.md
  • de/SUMMARY.md
  • fr/README.md
  • fr/SUMMARY.md
  • chapter-2-introduction.md
  • about-xoops-cms.md
  • appendix-1-working-with-the-new-admin-gui-our-dashboard.md
  • appendix-5-increase-security-of-your-xoops-installation.md
  • ローカライズ済み de/book/*.md および fr/book/*.md

必須の変更:

  • for XOOPS 2.5.7.xfor XOOPS 2.7.0 に変更します。
  • 著作権年を 2018 から 2026 に更新します。
  • 古い XOOPS 2.5.x および 2.6.0 の参照を現在のリリースを説明する場合に置き換えます。
  • SourceForge時代のダウンロードガイダンスを GitHub Releases に置き換えます:
    • https://github.com/XOOPS/XoopsCore27/releases

about-xoops-cms.md およびローカライズ済み 10aboutxoops.md ファイルは引き続き古い 2.5.x および 2.6.0 GitHub の場所を指しています。これらのリンクを現在の 2.7.x プロジェクトの場所に更新する必要があります。

1.3 スクリーンショットリフレッシュ

Section titled “1.3 スクリーンショットリフレッシュ”

インストーラー、アップグレード UI、管理ダッシュボード、テーマピッカー、モジュールピッカー、およびインストール後画面を示すすべてのスクリーンショットは古くなっています。

影響を受けるアセットツリー:

  • .gitbook/assets/
  • en/assets/
  • de/assets/
  • fr/assets/

これは部分的なリフレッシュではなく、完全なリフレッシュです。2.7.0 インストーラーは異なる Bootstrap ベースのレイアウトと異なるビジュアル構造を使用しています。

ファイル:

  • chapter-2-introduction.md

2.1 システム要件を書き直す必要があります

Section titled “2.1 システム要件を書き直す必要があります”

現在のチャプターは単に Apache、MySQL、および PHP とだけ述べています。XOOPS 2.7.0 には明示的な最小値があります:

コンポーネント2.7.0 最小2.7.0 推奨
PHP8.2.08.4+
MySQL5.7.88.4+
ウェブサーバー必要な PHP をサポートするサーバーApache または Nginx 推奨

追加するメモ:

  • IIS はインストーラーで可能として引き続きリストされていますが、Apache と Nginx が推奨される例です。
  • リリースノートは MySQL 9.0 互換性も呼び出しています。

2.2 必須および推奨 PHP 拡張チェックリストを追加

Section titled “2.2 必須および推奨 PHP 拡張チェックリストを追加”

2.7.0 インストーラーは必須要件と推奨拡張機能を分離するようになりました。

インストーラーで表示される必須チェック:

  • MySQLi
  • Session
  • PCRE
  • filter
  • file_uploads
  • fileinfo

推奨拡張機能:

  • mbstring
  • intl
  • iconv
  • xml
  • zlib
  • gd
  • exif
  • curl

現在のステップ 5 は checksum.phpchecksum.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 翻訳/ダウンロード言語を置き換え

Section titled “2.5 SourceForge 翻訳/ダウンロード言語を置き換え”

現在のテキストは引き続き SourceForge で XOOPS にアクセスして他の言語パッケージを取得するよう述べています。これを現在のプロジェクト/コミュニティダウンロードガイダンスに置き換える必要があります。

3. チャプター 3: サーバー構成チェック

Section titled “3. チャプター 3: サーバー構成チェック”

ファイル:

  • chapter-3-server-configuration-check.md

必須の変更:

  • 現在の 2 ブロックレイアウトの周囲にページ説明を書き直します:
    • 要件
    • 推奨拡張機能
  • 古いスクリーンショットを置き換えます。
  • 上記の要件チェックを明示的に文書化します。

4. チャプター 4: 正しいパスを選択

Section titled “4. チャプター 4: 正しいパスを選択”

ファイル:

  • chapter-4-take-the-right-path.md

必須の変更:

  • 新しい Cookie Domain フィールドを追加します。
  • パスフィールドの名前と説明を 2.7.0 に一致するように更新します:
    • XOOPS Root Path
    • XOOPS Data Path
    • XOOPS Library Path
    • XOOPS URL
    • Cookie Domain
  • ライブラリパスを変更すると、vendor/autoload.php に有効な Composer オートローダーが必要になることを示す注記を追加します。

これは 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.phpsecure.php を書き込むと述べています。

2.7.0 では、構成ファイルも xoops_data/configs/ にインストールされます。以下を含みます:

  • xoopsconfig.php
  • キャプチャ構成ファイル
  • テキストサニタイザー構成ファイル

6.2 xoops_data/configs/ の既存構成ファイルは上書きされません

Section titled “6.2 xoops_data/configs/ の既存構成ファイルは上書きされません”

上書きなし動作はスコープで、グローバルではありません。page_configsave.php の 2 つの異なるコードパスが構成ファイルを書き込みます:

  • writeConfigurationFile() (行 59 および 66 で呼び出され) ウィザード入力から xoops_data/data/secure.phpmainfile.php常に再生成します。存在チェックはなく、既存のコピーが置き換えられます。
  • copyConfigDistFiles() (行 62 で呼び出され、行 317 で定義) xoops_data/configs/ ファイル (xoopsconfig.php、キャプチャ構成、テキストサニタイザー構成) を宛先がまだ存在しない場合のみコピーします。

チャプターの書き換えは両方の動作を明確に反映する必要があります:

  • 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 をテーブルリストに追加します。

ファイル:

  • chapter-7-administration-settings.md

7.1 パスワード UI 説明は古くなっています

Section titled “7.1 パスワード UI 説明は古くなっています”

インストーラーはパスワード生成を含み続けていますが、今度は以下も含みます:

  • zxcvbn ベースのパスワード強度メーター
  • ビジュアル強度ラベル
  • 16 文字ジェネレータとコピーフロー

現在のパスワードパネルを説明するようにテキストとスクリーンショットを更新します。

7.2 メール検証が強制されるようになりました

Section titled “7.2 メール検証が強制されるようになりました”

管理者メールは FILTER_VALIDATE_EMAIL で検証されます。チャプターはメール値が無効な場合は拒否されることを述べるべきです。

7.3 ライセンスキーセクションが間違っています

Section titled “7.3 ライセンスキーセクションが間違っています”

これは最も重要な事実修正の 1 つです。

現在のガイドは以下を述べています:

  • License System Key があります
  • /include/license.php に保存されます
  • /include/license.php はインストール中に書き込み可能である必要があります

これはもはや正確ではありません。

2.7.0 が実際に行うこと:

  • インストールはライセンスデータを xoops_data/data/license.php に書き込みます
  • htdocs/include/license.phpXOOPS_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 に存在するテーマ:

  • default
  • xbootstrap
  • xbootstrap5
  • xswatch4
  • xswatch5
  • xtailwind
  • xtailwind2

また、注記してください:

  • 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 はこのステップが実行される前にインストールされるため、チェックボックスとして表示されることはありません。

必要なガイド変更:

  • バンドルされたモジュールが 3 つだけあると言うのをやめます。
  • インストーラーステップを4 つの選択可能なモジュール (debugbarpmprofileprotector) を示すと説明し、5 つではなく。
  • system をピッカーに表示されない常にインストールされるコアモジュールとして別に文書化します。
  • debugbar をバンドルされたモジュール説明に 2.7.0 の新機能として追加します。
  • インストーラーのデフォルトモジュール事前選択は現在空であることに注記してください。モジュールは選択可能ですが、インストーラー構成で事前チェックされていません。

ファイル:

  • 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 時代の管理経験に向けています。これを現在の管理テーマに合わせる必要があります:

  • default
  • dark
  • modern
  • transition

8.3 インストール後パス編集ガイダンスは修正が必要です

Section titled “8.3 インストール後パス編集ガイダンスは修正が必要です”

現在のテキストは読者に secure.php をパス定義で更新するよう指示しています。2.7.0 では、これらのパス定数は mainfile.php で定義されており、secure.php はセキュアデータを保持しています。このチャプターの例ブロックは相応に修正する必要があります。

8.4 本番設定を追加する必要があります

Section titled “8.4 本番設定を追加する必要があります”

ガイドは mainfile.dist.php に現在存在する本番デフォルトを明示的に述べるべきです:

  • XOOPS_DB_LEGACY_LOGfalse のままである必要があります
  • XOOPS_DEBUGfalse のままである必要があります

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 アップグレードフローはアップグレード完了前にプリフライトプロセスを強制するようになりました。

新しい必須フロー:

  1. upgrade/ ディレクトリをサイトルートにコピーします。
  2. /upgrade/preflight.php を実行します。
  3. /themes/ および /modules/ を古い Smarty 構文についてスキャンします。
  4. 適切な場合はオプションの修復モードを使用します。
  5. クリーンになるまで再実行します。
  6. /upgrade/ に続けます。

現在のチャプターはこれをまったく言及していないため、2.7.0 ガイダンスと互換性がありません。

9.2 手動の 2.5.2 時代のマージナラティブを置き換え

Section titled “9.2 手動の 2.5.2 時代のマージナラティブを置き換え”

現在のチャプターはまだフレームワークマージ、AltSys ノート、および手動で管理されたファイル再構築を使用した手動の 2.5.2 スタイルアップグレードについて説明しています。これを release_notes.txt および upgrade/README.md からの実際の 2.7.x アップグレードシーケンスに置き換える必要があります。

推奨チャプターアウトライン:

  1. ファイルとデータベースをバックアップします。
  2. サイトをオフにします。
  3. htdocs/ をライブルートにコピーします。
  4. htdocs/xoops_lib をアクティブなライブラリパスにコピーします。
  5. htdocs/xoops_data をアクティブなデータパスにコピーします。
  6. upgrade/ をウェブルートにコピーします。
  7. preflight.php を実行します。
  8. /upgrade/ を実行します。
  9. アップデータープロンプトを完了します。
  10. system モジュールを更新します。
  11. インストールされている場合は pmprofile、および protector を更新します。
  12. upgrade/ を削除します。
  13. サイトをオンに戻します。

9.3 実際の 2.7.0 アップグレード変更を文書化

Section titled “9.3 実際の 2.7.0 アップグレード変更を文書化”

2.7.0 のアップデーターには少なくともこれらの具体的な変更が含まれます:

  • tokens テーブルを作成します
  • モダンパスワードハッシュ用に bannerclient.passwd を拡張します
  • セッションクッキー優先設定を追加します
  • 廃止されたバンドルディレクトリを削除します

ガイドはすべての実装の詳細を公開する必要はありませんが、アップグレードがファイルコピープラスモジュール更新のみであることを意味することを停止する必要があります。

10. 歴史的なアップグレードページ

Section titled “10. 歴史的なアップグレードページ”

ファイル:

  • upgrading-from-xoops-2.4.5-easy-way.md
  • upgrading-from-xoops-2.0.-above-2.0.14-and-2.2..md
  • upgrading-from-any-xoops-2.0.7-to-2.0.13.2.md
  • upgrading-a-non-utf-8-site.md
  • upgrading-xoopseditor-package.md

ステータス: 構造的な決定は既に解決されています — ルート SUMMARY.md はこれらを専用の歴史的アップグレード注記セクションに移動し、各ファイルは 2.7.0 アップグレード向けにチャプター 9 に読者を指す「歴史的参照」コールアウトを含みます。それらはもはや第一級のアップグレードガイダンスではありません。

残りの作業 (一貫性のみ):

  • ルート README.md が汎用の「Upgrades」ヘッダーの下ではなく、同じ「歴史的アップグレード注記」見出しの下にこれらを一覧表示していることを確認します。
  • de/README.mdde/SUMMARY.mdfr/README.mdfr/SUMMARY.md、および en/SUMMARY.md で同じ分離をミラーリングします。
  • 各歴史的アップグレードページ (ルートおよびローカライズ済み de/book/upg*.md / fr/book/upg*.md コピー) がチャプター 9 にリンクバックする古いコンテンツコールアウトを含むことを確認します。

ファイル:

  • appendix-1-working-with-the-new-admin-gui-our-dashboard.md

この付録は Oxygen 管理 GUI に関連付けられており、書き換えが必要です。

必須の変更:

  • すべての Oxygen 参照を置き換えます
  • 古いアイコン/メニュースクリーンショットを置き換えます
  • 現在の管理テーマを文書化します:
    • default
    • dark
    • modern
    • transition
  • リリースノートで呼び出された現在の 2.7.0 管理機能に言及してください:
    • システム管理テーマのテンプレートオーバーロード機能
    • 更新された管理テーマセット

12. 付録 2: FTP 経由で XOOPS をアップロード

Section titled “12. 付録 2: FTP 経由で XOOPS をアップロード”

ファイル:

  • appendix-2-uploading-xoops-via-ftp.md

必須の変更:

  • HostGator 固有および cPanel 固有の仮定を削除します
  • ファイルアップロード文言を最新化します
  • xoops_lib が Composer 依存関係を含むようになったため、アップロードはより大きく、選択的にトリミングすべきではないことに注記してください

ファイル:

  • appendix-5-increase-security-of-your-xoops-installation.md

必須の変更:

  • register_globals ディスカッション完全に削除します
  • 廃止されたホストチケット言語を削除します
  • 読み取り専用が意図されている場合、権限テキストを 404 から 0444 に修正します
  • mainfile.php および secure.php ディスカッションを 2.7.0 レイアウトと一致するように更新します
  • 新しいクッキー/ドメイン セキュリティ関連定数コンテキストを追加します:
    • XOOPS_COOKIE_DOMAIN_USE_PSL
    • XOOPS_COOKIE_DOMAIN
  • 本番ガイダンスを追加します:
    • XOOPS_DB_LEGACY_LOG
    • XOOPS_DEBUG

ルートレベルの英語ファイルが修正された後、以下で同等の更新が必要です:

  • de/book/
  • fr/book/
  • de/README.md
  • fr/README.md
  • de/SUMMARY.md
  • fr/SUMMARY.md

en/ ツリーは別の README およびアセットセットを含むため、レビューも必要ですが、部分的な book/ ツリーのみが表示されているようです。

  1. レポジトリ/バージョン参照を 2.7.0 に更新します。
  2. 実際の 2.7.0 アップグレードフロー および Smarty 4 プリフライトの周囲をチャプター 9 を書き直します。
  3. システム要件を PHP 8.2+ および MySQL 5.7.8+ に更新します。
  4. チャプター 7 ライセンスキーファイルパスを修正します。
  5. テーマおよびモジュール在庫を修正します。
  6. チャプター 6 テーブルカウントを 32 から 33 に修正します。
  1. 書き込み可能パスガイダンスを書き直します。
  2. パスセットアップに Composer オートローダー要件を追加します。
  3. データベース文字セットガイダンスを utf8mb4 に更新します。
  4. チャプター 8 パス編集ガイダンスを修正して、定数が正しいファイルに文書化されます。
  5. チェックサム指示を削除します。
  6. register_globals および他の廃止 PHP ガイダンスを削除します。

リリース品質のクリーンアップ

Section titled “リリース品質のクリーンアップ”
  1. すべてのインストーラーおよび管理スクリーンショットを置き換えます。
  2. 歴史的アップグレードページをメインフローから移動します。
  3. 英語が修正された後、ドイツ語およびフランス語コピーを同期します。
  4. 古いリンクおよび重複する README 行をクリーンアップします。