xreaでCakePHPを使う
Sandboxを開くにあたって、このBlogで利用しているxreaにCakePHPを設置しました。
作業メモ。
http://sandbox.massat.jp でアクセスされるURLで、CakePHPを動作させることにしました。
xreaでは、公開ディレクトリ内に作成したFQDNのディレクトリ内でサブドメインを運用します。
なのでサブドメイン sandbox.massat.jp は以下のディレクトリで運用します。
/virtual/massat/ + public_html/ ← massat.jpの公開ディレクトリ + sandbox.massat.jp/ ← sandbox.massat.jp
ここにCakePHPのインストール。
参考にしたのは、こちらのマニュアルです。
以下引用。
Cake のディレクトリをディスクの別の場所に置きたい場合があります。共有サーバの制限のためであったり、幾つかの apps が同じ Cake ライブラリを共有するようにしたい時などです。
Cake アプリケーションには三つの主な部分があります。
- CakePHP のコアライブラリ - /cake
- アプリケーションコード(コントローラ、モデル、レイアウト、ビューなど。) -/app
- アプリケーションの webroot ファイル(画像、javascript, CSS など) -/app/webroot
それぞれのディレクトリは、ファイルシステムのどこにでも配置することができます。 webroot は、Webサーバからアクセスできるようにしておく必要があります。Cake に場所を伝えるようにする限り、必要ならば、 webroot フォルダを app フォルダから取り出すことも可能です
上記にもありますが、
- CakePHP のコアライブラリ
- アプリケーションコード
は、公開されている場所には置きたくないなぁと。
そこで sandbox.massat.jp では、以下のようなディレクトリ構成にしました。
/virtual/massat/ ← レンタルスペースのルートディレクトリ + cake/ + app/ ← CakePHPのアプリケーションコード + cake/ ← CakePHPのコアライブラリ + public_html/ ← massat.jpの公開ディレクトリ + sandbox.massat.jp/ ← アプリケーションのwebrootファイル
配置をカスタマイズしたので、さらに作業が必要となります。
Cake のインストール時の設定で、/app/webroot/index.php で幾つか変更する必要があります。 編集するべき定数が三つあります。:ROOT、 APP_DIR、 CAKE_CORE_INCLUDE_PATH です。
- ROOT には、あなたのapp フォルダを含むディレクトリのパスを設定してください。
- APP_DIR には、あなたの app フォルダのパス名を設定してください。
- CAKE_CORE_INCLUDE_PATH には、Cake ライブラリフォルダのパスを設定してください。
配置にあわせ、/virtual/massat/public_html/sandbox.massat.jp/index.php を編集しました。
if (!defined('ROOT')) {
define('ROOT', DS.'virtual'.DS.'massat'.DS.'cake');
}
if (!defined('APP_DIR')) {
//define('APP_DIR', 'DIRECTORY NAME OF APPLICATION';
define('APP_DIR', 'app');
}
if (!defined('CAKE_CORE_INCLUDE_PATH')) {
define('CAKE_CORE_INCLUDE_PATH', ROOT);
}
以上で、CakePHPは正常に動作しました。サブドメイン直下のURLなので、.htaccessの編集も必要ありませんでした。



