Posted on

CakePHPのcore.phpの設定を勉強!!

今回、自分なりにcore.phpの各設定値を調査してみたのでブログに載せておきます。
あまり情報が載っていなかった項目や、説明の意味が分かりにくかった項目があって
自分なりの解釈で行っている所もありますが、とりあえず全部の項目をまとめました。


今回、自分なりにcore.phpの各設定値を調査してみたのでブログに載せておきます。
あまり情報が載っていなかった項目や、説明の意味が分かりにくかった項目があって
自分なりの解釈で行っている所もありますが、とりあえず全部の項目をまとめました。

Configure::write(‘debug’, 0);
0 = 運用モード
1 = エラーと警告を表示
2 = エラーと警告、SQLを表示
3 = エラーと警告、SQL、コントローラのdumpを表示

Configure::write(‘App.encoding’, ‘UTF-8’);
システム内部での文字コード

Configure::write(‘App.baseUrl’, env(‘SCRIPT_NAME’));
mod_rewriteを使わない時にこれをコメントアウトしておく。
例)postsコントローラーのindexというアクションの時
http://www.xxxxx.com/posts/index(mod_rewriteを使っている時)
http://www.xxxxx.com/index.php/posts/index(mod_rewriteを使っていない時)
mod_rewriteを使わなければURLの途中でindex.phpが現れるようになる。

Configure::write(‘Routing.admin’, ‘admin’);
管理画面と公開画面を切り替えたい時にこのコメントアウトを外す。
‘admin’の文字を他の文字にすることも可能
例)postsコントローラー内で
function admin_index(){}
と記述しているとURLは
http://www.xxxxx.com/admin/posts/index
となりコントローラーの前にadminが付く形でURLが出来ます。

Configure::write(‘Cache.disable’, true);
true に設定すると、サイト全体のキャッシュが無効になります。
キャッシュが有効の場合、以下の場所にキャッシュを作成
./cache/models/cake_model_default_*
./cache/persistent/cake_core_*

Configure::write(‘Cache.check’, true);
trueに設定すると、ビューのキャッシュが有効になります。
有効にするためにコントローラ内の設定も必要ですが、この変数によって、設定を調べるようになります。
キャッシュが有効の場合、以下の場所にキャッシュを作成
./cache/views

define(‘LOG_ERROR’, 2);
エラーに関する定数。エラーログどデバッグに用いられます。
LOG_ERRORの数字は何処までのエラーを./tmp/logs/error.logに吐き出すか決めます。
error.logに出されなかったログはdebug.logの方に出力されます。

Configure::write(‘Session.save’, ‘php’);
CakePHP がどのセッションストレージを使用するかを指定します。
php = PHP のデフォルトのセッションストレージを使用します。
cache = Cache::config() で設定されたキャッシュエンジンを使用する。
cake = セッションデータを /app/tmp に格納します。
database = セッションデータをデータベーステーブルの中に保存します。

Configure::write(‘Session.table’, ‘cake_sessions’);
セッション情報を格納するテーブル名

Configure::write(‘Session.database’, ‘default’);
セッション情報を格納するデータベース名

Configure::write(‘Session.cookie’, ‘CAKEPHP’);
クッキーの名前

Configure::write(‘Session.timeout’, ‘120’);
セッションの切れる秒数。実際の時間は、 Security.level に依存します。

Configure::write(‘Session.start’, true);
trueにするとセッションを自動的に開始する

Configure::write(‘Session.checkAgent’, true);
falseにするとユーザーエージェントをチェックしない

Configure::write(‘Security.level’, ‘medium’);
この設定でhighの場合10、mediumの場合100、lowの場合300を
Session.timeoutの時間を掛けた値がセッションの保持時間になります。
セッション時間と共にここの設定で、何処までセッションを保持しているか決まります。
highの場合=CAKEPHPの内部まで
mediumの場合=同一ドメインの内部まで
lowの場合=仮想ドメインなどの違うドメインでも保持しています

Configure::write(‘Security.salt’, ‘DYhG93b0qyJfIxfs2guVoUubWwvniR2G0FgaC9mi2009’);
ランダムな文字列を指定:暗号化等で利用されます
CAKEPHPを落としてきたデフォルトのままだとセキュリティ上良くないので変えておく。

Configure::write(‘Asset.filter.css’, ‘css.php’);
CSSヘルパーを呼ぶ時に指定したphpファイルを通る

Configure::write(‘Asset.filter.js’, ‘custom_javascript_output_filter.php’);
Javascriptヘルパーを呼ぶ時に指定したphpファイルを通る

Configure::write(‘Acl.classname’, ‘DbAcl’);
Configure::write(‘Acl.database’, ‘default’);

アクションコントロールリストの保存場所の設定
cakephpで用意してくれている認証機能みたい

Cache::config(‘default’, array(‘engine’ => ‘File’));
キャッシュの保存場所やエンジンの指定
場所を変えたかったらpathという指定の仕方で変更可
Cache::config(‘default’, array(‘engine’ => ‘File’, ‘path’ => CACHE . ‘test’ . DS));
エンジンは次のようなものがあるらしいです
-APC
-File(ファイルキャッシュ)
-Memcache
-Model(モデルによるキャッシュ)
-XCache
-独自のキャッシュエンジン