編輯:我在談論ZF應用程序,所以緩存應該與Zend_Cache。如何緩存某些模塊/控制器/操作的整個HTML輸出?
好的。我的應用程序中有一些頁面很少發生改變。我想緩存整個HTML輸出,所以我不需要在那裏做任何PHP處理。可能嗎?
另外,還有一個問題。如果頁面上有表單。我希望整個頁面首次從緩存中取出,但如果用戶提交表單,請不要使用緩存,而是要處理PHP。
這是否有可能?
我試圖找出一些簡單的方法來做到這一點我自己在此期間。
編輯:我在談論ZF應用程序,所以緩存應該與Zend_Cache。如何緩存某些模塊/控制器/操作的整個HTML輸出?
好的。我的應用程序中有一些頁面很少發生改變。我想緩存整個HTML輸出,所以我不需要在那裏做任何PHP處理。可能嗎?
另外,還有一個問題。如果頁面上有表單。我希望整個頁面首次從緩存中取出,但如果用戶提交表單,請不要使用緩存,而是要處理PHP。
這是否有可能?
我試圖找出一些簡單的方法來做到這一點我自己在此期間。
如果你不想PHP處理(靜態文件),你必須使用Zend_Cache_Frontend_Capture和Zend_Cache_Backend_Static:http://framework.zend.com/manual/en/zend.cache.backends.html
但是,它不會與表單。在這種情況下,你必須使用Zend_Cache_Frontend_Page。當$ _POST數組中有一些變量(默認情況下,選項cache_with_post_variables爲false)時,默認情況下此前端不使用緩存。
使用Zend_Cache_Frontend_Page
如果你看看這page,他們解釋瞭如何設置和使用它。關於排除表單等動態內容,該功能可以讓您選擇緩存或不緩存哪些頁面,只需稍微調整一下即可。
這通常稱爲「輸出緩存」。
以下是關於該技術的一篇內容豐富的文章:http://www.devshed.com/c/a/PHP/Output-Caching-with-PHP/。
除已發佈的答案外,您還可以使用APC。 APC (Alternative PHP Cache)也通常用於通過緩存字節碼來提高性能。
啊,錯過了zend關鍵字。 – 2010-12-16 07:39:24