D3モジュールをインストールする

【環境】PHPバージョン:5.2.14,MySQLバージョン:5.5.13,legacy:2.1.8a,altsys:0.7,protector:3.4

1つのXOOPSシステム上には同じモジュールを複数インストールできません。Duplicatableモジュールは,この問題を解決してくれます。

D3モジュールをインストールする前に,次の作業が必要です。

(1)XOOPS_TRUST_PATHの設定
①ディレクトリを作成する。
ディレクトリをドキュメント下に作成するのは,セキュリティ上好ましくありません。たとえば,下記のようにドキュメントルートと横並びにするとよいでしょう。
/home/abcd/public_html←ドキュメントルート
/home/abcd/public_html/XOOPS_TRUST_PATH←×
/home/abcd/XOOPS_TRUST_PATH←○
②mainfile.phpに追記
39行目あたりに下記のように記述します。
define(‘XOOPS_TRUST_PATH’, ‘/home/abcd/XOOPS_TRUST_PATH‘);
mainfile.phpは通常「読み取り専用」に設定されているので,サーバー上のmainfile.phpのパーミッションを,たとえば444から644に変更してからアップロード上書きします。アップロード後は,また読み取り専用に戻します。

(2)ALTSYSモジュールをインストール
インストールのみでよいです。

(3)Protecterモジュールのインストール
この操作は必須ではありませんが,セキュリティ性を向上させるためにインストールすることをお勧めします。
Protecterのチェックを有効にするためには,mainfile.phpを編集する必要があります。
ファイルの下方に書かれている記述に,以下の赤字部分を追記します。
*****************************************************
    if (!defined(‘_LEGACY_PREVENT_LOAD_CORE_’) && XOOPS_ROOT_PATH != ”) {
        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';
        }
        include XOOPS_TRUST_PATH.’/modules/protector/include/postcheck.inc.php’ ;
    }
*****************************************************

MySQLバージョン5で,モジュールのインストールができないときは,XOOPS_TRUST_PATH内に置くディレクトリの中から「mysql.sql」ファイルを探し,「TYPE=MyISAM;」を「ENGINE=MyISAM;」に修正するとインストールできるようになります。