主にWEB関係の話。

スポンサード リンク

FuelPHPのコアを複数のアプリで共有する方法

FuelPHPのコアを複数のアプリケーションで共有する方法。

1.FuelPHP本体の配置

まずはFuelPHPをダウンロードして配置する。
パスが通れば何処でも良いのだけれど、とりあえず、例として、~/web/に置いてみる。
こんな感じ。

1
2

2.アプリケーションの配置

~/web/hoge/以下に hoge というディレクトリを作成し、アプリケーションを配置することにする。

ripper@skuld002:~/web$ pwd
/home/ripper/web
ripper@skuld002:~/web$ mkdir hoge
ripper@skuld002:~/web$ cp -r  ./fuelphp/fuel/app/ ./fuelphp/public/ ./fuelphp/oil ./hoge

んで、~/web/ 以下はこんな感じになる。

ripper@skuld002:~/web$ pwd
/home/ripper/web
ripper@skuld002:~/web$ tree -L 3
.
├── fuelphp
│   ├── CHANGELOG.md
│   ├── CONTRIBUTING.md
│   ├── README.md
│   ├── TESTING.md
│   ├── build.xml
│   ├── fuel
│   │   ├── LICENSE
│   │   ├── app
│   │   ├── core
│   │   └── packages
│   ├── oil
│   └── public
│       ├── assets
│       └── index.php
└── hoge
    ├── app
    │   ├── bootstrap.php
    │   ├── cache
    │   ├── classes
    │   ├── config
    │   ├── lang
    │   ├── logs
    │   ├── migrations
    │   ├── modules
    │   ├── tasks
    │   ├── tests
    │   ├── tmp
    │   ├── vendor
    │   └── views
    ├── oil
    └── public
        ├── assets
        └── index.php

3.パスの変更

ディレクトリの配置がデフォルトとは違うので、~/web/hoge/public/index.php 及び、~/web/hoge/oil からのパスを変更してやる。

~/web/hoge/public/index.php

/**
 * Path to the application directory.
 */
define('APPPATH', realpath(__DIR__.'/../app').'/');

/**
 * Path to the default packages directory.
 */
define('PKGPATH', realpath(__DIR__.'/../../fuelphp/fuel/packages').'/');

/**
 * The path to the framework core.
 */
define('COREPATH', realpath(__DIR__.'/../../fuelphp/fuel/core').'/');

~/web/hoge/oil

/**
 * Path to the application directory.
 */
define('APPPATH', realpath(__DIR__.'/app').'/');

/**
 * Path to the default packages directory.
 */
define('PKGPATH', realpath(__DIR__.'/../fuelphp/fuel/packages').'/');

/**
 * The path to the framework core.
 */
define('COREPATH', realpath(__DIR__.'/../fuelphp/fuel/core').'/');

4.セットアップ

php oil refine install を実行する。

ripper@skuld002:~/web$ pwd
/home/ripper/web
ripper@skuld002:~/web$ php ./hoge/oil refine install
	Made writable: /home/ripper/web/hoge/app/cache
	Made writable: /home/ripper/web/hoge/app/logs
	Made writable: /home/ripper/web/hoge/app/tmp
	Made writable: /home/ripper/web/hoge/app/config

 
あとは、ドキュメントルートを ~/web/hoge/public とするだけ。
以上でインストールは完了〜。
ちなみに、アプリを追加する場合は、2〜4を繰り返す。

その他

長々書いて置いてあれだけれど、oil及び、index.phpのパスさえ適切に設定してやれば、コアはどこに配置しても良い。
ただ、アプリケーションとコア類の位置関係を統一して、パスを相対パスで書いておけば、index.php 及びoilのパスを毎回書き換える必要がないので楽かもしれない。
(oilを各アプリで所持させるのではなく、実行時にアプリのディレクトリ名を入力させて分岐させる形に書き換えるともっと楽かもしれない。)

スポンサード リンク

人気記事

最近の投稿

カテゴリー

タグ