yii頁面緩存
『壹』 yii assets 文件怎麼更新
可以用memcache實現緩存組件array('components'=>array('cache'=>array('class'=>'system.caching.CMemCache','servers'=>array(array('host'=>'server1','port'=>11211,'weight'=>60),array('host'=>'server2','port'=>11211,'weight'=>40),),),),);三、頁面緩存頁面緩存指的是緩存整個頁面的內容。頁面緩存可以發生在不同的地方。例如,通過選擇適當的頁面頭,客戶端的瀏覽器可能會緩存網頁瀏覽有限時間。Web應用程序本身也可以在緩存中存儲網頁內容。在本節中,我們側重於後一種法。頁面緩存可以被看作是片段緩存(/doc/guide/caching.fragment)一個特殊情況。由於網頁內容是往往通過應用布局來生成,如果我們只是簡單的在布局中調用beginCache()和endCache(),將無法正常工作。這是因為布局在CController::render()方法里的載入是在頁面內容產生之後。緩存整個頁面,我們應該跳過產生網頁內容的動作執行。我們可以使用COutputCache作為動作過濾器(/doc/guide/basics.controller#filter)來完成這一任務。下面的代碼演示如何配置緩存過濾器:[php]viewplainprint?publicfunctionfilters(){returnarray(array('system.web.widgets.COutputCache','ration'=>100,'varyByParam'=>array('id'),),);}上述過濾器配置會使過濾器適用於控制器中的所有行動。我們可能會限制它在一個或幾個行動通過使用插件操作器。的細節中可以看過濾器(/doc/guide/basics.controller#filter)。提示:我們可以使用COutputCache作為一個過濾器,因為它從CFilterWidget繼承過來,這意味著它是一個工具(widget)和一個過濾器。事實上,widge的工作方式和過濾器非常相似:工具widget(過濾器filter)是在action動作里的內容執行前執行,在執行後結束。