我已經查看緩存設置使用CakePHP的驗證忽略了與「/」某些路由訪問緩存的視圖時
class DiaryController extends AppController {
...
var $cacheAction = array('index' => "+56 hours");
function index($week = null) {
...
}
}
與下列選項我的控制器的索引動作app/config/core.php
:
Configure::write('Cache.check', true);
...
Cache::config('default', array('engine' => 'File'));
只有經過認證的用戶才能訪問日記管理員(以及網站的其他部分)的索引操作,使用AuthComponent
和
class AppController extends Controller {
...
var $components = array('Auth', 'Security', 'Session','Cookie','RequestHandler');
function beforeFilter() {
$this->Auth->userModel = 'Admin';
...
}
...
}
我想在app/config/routes.php
使用
Router::connect('/', array('controller' => 'admin', 'action' => 'login'));
到站點的根目錄映射到我的登錄表單。所有似乎都可以正常工作,直到我退出,然後嘗試在瀏覽器中訪問mytestsite.com/diary/index
。即使我沒有登錄,我仍然可以訪問這些頁面。我認爲這是緩存問題,因爲我只能訪問我在app/tmp/cache/views
中擁有文件的網址。將索引操作的$week
參數更改爲一個值,該值對於You are not authorized to access that location.
消息中的結果沒有緩存文件。
奇怪的是,如果我站點映射到DiaryController
的索引行爲的根源,與
Router::connect('/', array('controller' => 'diary', 'action' => 'index'));
(在
app/config/routes.php
再次)
我沒有這個疑難問題無法訪問當我沒有登錄時,緩存的日記索引視圖。
有沒有人遇到過這個問題?你能提出一些我可能錯過的東西嗎?或者你知道這是否是核心文件中的錯誤?我正在使用CakePHP 1.3.15。