freoの複数設置について
概要
freoを同じサーバーに複数設置したい場合、フォルダごとに分ければいくつでも設置することができます。また、一部のファイルを共通のものとして扱うこともできます。
広告
詳細
以下は、公開フォルダ内に freo1
フォルダと freo2
フォルダを作成し、その中に設置した例です。
public_html /
|
+-- freo1 / index.php
| | config.php
| |
| +-- configs / ~略~
| |
| +-- css / ~略~
| |
| +-- database / ~略~
| |
| +-- files / ~略~
| |
| +-- images / ~略~
| |
| +-- js / ~略~
| |
| +-- libs / ~略~
| |
| +-- mails / ~略~
| |
| +-- templates / ~略~
| |
| +-- templates_c / ~略~
| |
| +-- tiny_mce / ~略~
|
+-- freo2 / index.php
| config.php
|
+-- configs / ~略~
|
+-- css / ~略~
|
+-- database / ~略~
|
+-- files / ~略~
|
+-- images / ~略~
|
+-- js / ~略~
|
+-- libs / ~略~
|
+-- mails / ~略~
|
+-- templates / ~略~
|
+-- templates_c / ~略~
|
+-- tiny_mce / ~略~
また、データベースにMySQLを使用している場合、データベースの設定も変更しておかないと、複数のfreoが同じデータベースを参照してしまいます。
この場合、freo/config.php
の「データベースの設定」にある「データベース名」を異なるデータベースに設定します。(データベースはあらかじめ作成しておきます。)
データベースを複数作成できない環境の場合、「テーブル名のプレフィックス」を変更してください。freoはデータベース内のデータを扱う際、プレフィックスを付加した状態で扱うので、この値を異なるものにしておけば、同じデータベースで複数のfreoのデータを管理できます。
ファイルの共有
freoを複数設置する際、一部のファイルを共通のものとして扱うことができます。これにより、サーバースペースを節約したりメンテナンスを容易にしたりすることができます。
一部のファイルを共通のものとして扱う場合、config.php
をエディタで開き、「パスの設定」を変更します。例えばfreo1のプログラムをfreo2からも利用したい場合、freo2/config.php
をエディタで開き、「メインプログラムファイル格納ディレクトリ」を
//メインプログラムファイル格納ディレクトリ
define('FREO_MAIN_DIR', '../freo1/libs/');
このように設定すると、プログラムを共通のものとして扱うことができます。(freo2/index.php
からの相対パスを設定します。)また、freo1のテンプレートをfreo2からも利用したい場合、freo2/config.php
をエディタで開き、「テンプレート格納ディレクトリ」を
//テンプレート格納ディレクトリ
define('FREO_TEMPLATE_DIR', '../freo1/templates/');
このように設定します。
libs/
内の一部のファイルのみ共通のものとして扱いたい場合、例えばSmartyのみを共通のものとして扱いたい場合、上の方法では対応できません。この場合、libs/freo/freo.php
を編集することで対応できます。
libs/freo/freo.php
をエディタで開くと、はじめの方に
require_once FREO_MAIN_DIR . 'smarty/Smarty.class.php';
という部分があります。FREO_MAIN_DIR
は初期状態では libs/
と定義されているので、libs/smarty/Smarty.class.php
を読み込みます。この部分を例えば
require_once '../freo1/libs/smarty/Smarty.class.php';
このように設定すると、Smartyは freo1
内のものが読み込まれます。(freo2/index.php
からの相対パスを設定します。)