CakePHP Cake PHP のTOPページへのアクセスをコントロールする
cake PHP 1.2.3.8166.
Cake PHPでサイトを作成していった時、webroot/へアクセスするアクセスコントロールの設定です。
なお、手動でACLを設定されている方にはあまり参考にならないかもしれません。
本家のマニュアルサイトを見て、自動でACOリストを生成してくれるfunction initDB() を使った場合の話です。
DBからACOをみると、
Pages - display
というACOが作成されていて、?と思います。
このPages、がwebroot/へのアクセスのACOのようです。
ここにアクセスできるようにしておかないAROは、webroot/へアクセスすると自動ループになってしまい、Webサーバーが落ちるとか、ブラウザが応答しません。
どうやら、webroot/へのアクセスのリダイレクトがwebroot/になっているからのようです。
また、他のコントローラーで細かく設定したACLが自動ループになってしまうのも、得てしてこれが原因かもしれません。
戻りページがない場合、webroot/へリダイレクトされるようになっているようです。
なので、TOPページ(webroot/)へのアクセスを、前述のfunction initDB()内に下記のように書きましょう。
// 例:グループIDが6のグループにTOPページへのアクセスを許可する場合 $group->id = 6; $this->Acl->allow($group, 'controllers/Pages');