CakePHP 1.3 で view キャッシュをする方法
CakePHP 1.3 で view キャッシュをします。これがあればいっきにサイトの負荷が激減します。巨大な Web サービスもこれがあればしっかり作れますね。
core.php か bootstrap.php に設定をする
core.php の該当する項目の設定を変更するか bootstrap.php で以下のように設定を上書いてキャッシュを有効にします。
1 2
Configure::write('Cache.disable', false); // サイト全体のキャッシュを有効化 Configure::write('Cache.check', true); // ビューのキャッシュを有効化
コントローラーで Cache ヘルパーを読み込む
view キャッシュをしたいコントローラーで以下のようにヘルパーを読み込みます。
1
var $helpers = Array('Cache');
アクション毎に時間の設定をする
以下のように action 毎に何秒間キャッシュを取るのかを設定します。
1 2 3 4
var $cacheAction = Array( 'index' => 3600, 'calorie' => 3600 );
このコードですと以下のような意味になります。
- index を3600秒間キャッシュする。
- calorie を3600秒間キャッシュする。/calorie/100 とか /calorie/200 とかにアクセスしたらそのパラメータ毎にキャッシュする。
- それ以外のアクションはキャッシュしない。
関連記事
- CakePHP で便利関数や設定をまとめて定義するには bootstrap.php
- CakePHP のモデル名と同じメソッドを作るとヘルパーでエラーが出る
- CakePHP 1.2 から 1.3 にバージョンアップする手順のまとめ
- CakePHP のフォームヘルパーをマスターするのに読むべきページ
- CakePHP でエレメントを使って全ページに共通項目を表示するため基本的な方法
- CakePHP で AppController から AppModel のメソッドにアクセスすることは難しい
- CakePHP のコンポーネントでコントローラの関数や定義したモデルや変数などを扱う
- CakePHP でモデル・ビュー・コントローラー間で値を渡す基本的な方法
- CakePHP でテーブル名が存在しないとエラーが出る場合はキャッシュを削除する
- CakePHP で MySQL で文字化けする場合の解決方法
コメント
コメントは受け付けていません。