本日、サンプル作成サイトのアップグレードに挑戦しました。
アップグレードの方法については、
XOOPS USERS GROUPの記事を参照しました。
以下、引用。
Step1 準備 †
1. あなたのPHPのバージョンをチェックしてください (PHP >= 4.3.11)
2. あなたはあなたの XOOPS 2.0.x JP を最新版(XOOPS 2.0.16a JP)にアップグレードしなければいけません
3. このページで、あなたがサイトで使用中のモジュールの互換性をチェックしてください。そして、最新版やパッチ版をチェックアウトしてください。
4. あなたが互換性のために system モジュールを必要としているかどうかをチェックしてください。もしあなたがそれを必要とするのであれば、最新の system モジュールをダウンロードしてください。
↑
Step2 サイト閉鎖 † 1. あなたのサイトを閉鎖してください。
2. デバッグモードを PHP デバッグモードに変更してください。
3. PHP コンテンツタイプを使用しているカスタムブロックを無効に変更してください。(ブロックが X2 のグローバル変数に依存している場合、それは完動しないでしょう)
4. あなたが完全ある安全性を望むのであれば、すべてのブロックを無効に変更してください。特にシステムブロックのものを。
5. スタートモジュールをリセットしてください。もしスタートモジュールが互換性を持っていない場合、あなたは地獄へハマるでしょう。
6. すべてのキャッシュ設定を解除してください……なぜなら、 Legacy は X2 と異なるキャッシュの概念を持っているためです。
↑
Step3 ファイル交換 † 1. mainfile.php と以下のディレクトリを除くすべてのファイルを削除してください。
* images
* themes
* uploads
* modules
* あなたの XOOPS_TRUST_PATH
2. RC(Beta4) パッケージで上書きしてください
3. あなたが STEP1 で入手した最新版とパッチ版ですべてのモジュールを置き換えてください
(しかし、あなたは XOOPS_TRUST_PATH からファイルを除外する必要はありません。 D3 タイプモジュールが最新版を提供している場合に限り、それらを置き換えてください)
↑
Step4 アップグレード † 1. あなたの mainfile.php をパッチしてください。
mainfile.php をどうやってパッチするかだって? それは非常に簡単です。あなたの mainfile.php が以下のようになるように、テキストエディタかノートパッドで部分修正してください。
パッチ前:
if (!isset($xoopsOption['nocommon']) && XOOPS_ROOT_PATH != '') {
include XOOPS_ROOT_PATH."/include/common.php";
}
パッチ後:
if (!defined('_LEGACY_PREVENT_LOAD_CORE_') && XOOPS_ROOT_PATH != '') {
@include_once XOOPS_ROOT_PATH."/include/cubecore_init.php";
if (!isset($xoopsOption['nocommon']) && !defined('_LEGACY_PREVENT_EXEC_COMMON_')) {
include XOOPS_ROOT_PATH."/include/common.php";
}
}
もしあなたが XOOPS Protector を使っているのであれば、あなたはもう少しあなたの mainfile.php を調整する必要があります。このドキュメント(もしくはこのスレッドの最初の邦訳)の 'About mainfile.php' を読んでください。
* 2nd installer で必須モジュールをインストールしてください
* モジュール管理へ行き、すべてのモジュールをアップデートしてください
* XUpgrade をインストールしてください。あなたは /extras ディレクトリでそれを手に入れることができます。
↑
Step5 サイト再開 † 1. すべてのモジュールをアップデートし、それらの動作をチェックしてください。
2. もしあなたが system module を必要としないのであれば、アンインストールしてください。そして、そのディレクトリをあなたのサーバーから削除してください。
3. カスタムブロックを除く、あなたのブロックをインストールしてください。
4. 2枚のウィンドウを使ってあなたのカスタムブロックをインストールしてください。ひとつのウィンドウはホームページであなたのカスタムブロックをチェックするために。もうひとつのウィンドウは管理画面でトラブルを起こしたカスタムブロックを即座にアンインストールするために。
5. すべての一般設定項目を復元させてください。
6. あなたのサイトを開いてください。
7. すべてのチェックが終わった後、デバッグモードを OFF に変更してください。
※ちなみにprotectorモジュールが入っている場合は
mainfile.phpのバッチ方法は下記のとおりです。
if (!defined('_LEGACY_PREVENT_LOAD_CORE_') && XOOPS_ROOT_PATH != '') {
// for Protector module
include XOOPS_TRUST_PATH.'/modules/protector/include/precheck.inc.php';
@include_once XOOPS_ROOT_PATH."/include/cubecore_init.php";
if (!isset($xoopsOption['nocommon']) && !defined('_LEGACY_PREVENT_EXEC_COMMON_')) {
include XOOPS_ROOT_PATH."/include/common.php";
}
// for Protector module
include XOOPS_TRUST_PATH.'/modules/protector/include/postcheck.inc.php';
}
※アップグレードはうまくいったんですが、管理者画面にCSSが適用されていなくて、困りました。
原因は、“legacyRender”モジュールのパーミッションの設定でした…。