【转】最佳 WordPress 缓存插件:WP Super Cache
WP Super Cache 是 WordPress 官方開(kāi)發(fā)人員 Donncha 開(kāi)發(fā),是當(dāng)前最高效也是最靈活的 WordPress 靜態(tài)緩存插件。它把整個(gè)網(wǎng)頁(yè)直接生成 HTML 文件,這樣 Apache 就不用解析 PHP 腳本,通過(guò)使用這個(gè)插件,能使得你的 WordPress 博客將顯著的提速。
WP Super Cache 基本介紹
WP Super Cache 是基于 Ricardo Galli Granada 的 WP-Cache 2。WP-Cache 2 可以緩存你的 WordPress 博客使得不用再次訪問(wèn)數(shù)據(jù)庫(kù),但是它產(chǎn)生的是 PHP 文件而不是 HTML 文件,所以還需要 PHP 引擎去解析它們。而 WP Super Cache 則直接產(chǎn)生 HTML 文件,所以服務(wù)器不用解析甚至一行 PHP 代碼,所以緩存之后的速度就和訪問(wèn)你服務(wù)器上的一張圖片一樣快。
WP Super Cache 是如何工作的
一半常規(guī)的緩存辦法是手工把動(dòng)態(tài)頁(yè)面保存為 HTML 代碼,WP Super Cache 也是通過(guò)同樣的方式的,但是通過(guò)自動(dòng)的方式完成這個(gè)過(guò)程。
當(dāng)你一個(gè)訪問(wèn)者來(lái)的你的站點(diǎn),他沒(méi)有登入或者也沒(méi)有留言,這樣他得到是一個(gè)在 WordPress cache 文件夾下的 supercache 子文件夾下的純靜態(tài)文件,其實(shí)你都可以自己到上面的 supercache 目錄下去查看同樣的永久鏈接的 HTML 文件的備份。判斷一個(gè)頁(yè)面是否已經(jīng)被緩存了,查看該頁(yè)面的源代碼,看看最后一行是否有 <!– super cache –> 或者 <!– super cache gz –>。
如果訪問(wèn)者已經(jīng)登陸或者留了言,就會(huì)返回 WP Cache 函數(shù)生成的頁(yè)面,并且最后一行會(huì)有 <!– Cached page served by WP-Cache — >
WP Super Cache 基本使用
上傳 WP Super Cache 到插件目錄,并在 Plugin 目錄下激活之后,就可以到 Setting > WP Super Cache 進(jìn)行詳細(xì)配置。
WP Super Cache Status
首先是三個(gè)選項(xiàng):
- ON (WP Cache and Super Cache enabled)
- HALF ON (Super Cache Disabled, only legacy WP-Cache caching.)
- OFF (WP Cache and Super Cache disabled)
默認(rèn)情況下,WP Super Cache 是沒(méi)有開(kāi)啟的,所以在這里選擇下,需按則第一個(gè),就是 Super Cache,緩存為靜態(tài)文件,如果第二種情況呢,則和 WP-Cache 一致。
Proudly tell the world your server is Digg proof! (places a message in your blog’s footer)
這個(gè)是說(shuō)在你的 footer 顯示一條信息告訴讀者該博客已經(jīng)緩存了,一般不要這樣做。
Clear all cache files when a post or page is published. (This may significantly slow down saving of posts.)
這個(gè)是說(shuō)發(fā)布新日志的時(shí)候清理所有緩存,這個(gè)肯定不能這么干了。
Super Cache Compression
啟動(dòng)這個(gè)則會(huì)成生 gzip 壓縮,節(jié)省你的帶寬。
Mod Rewrite Rules
WP Super Cache 是通過(guò) Mod Rewrite 實(shí)現(xiàn)訪問(wèn)靜態(tài)文件的,所以這里在是顯示添加的 Mod Rewrite 規(guī)則。
Expiry Time and Garbage Collection
過(guò)期時(shí)間和垃圾收集,這里主要設(shè)置緩存文件過(guò)期時(shí)間,和多久刪除一次過(guò)期的緩存文件。個(gè)人建議:一般緩存時(shí)間設(shè)置為1天(86400)左右,緩存刪除時(shí)間為1個(gè)小時(shí)一次。
Accepted filenames, rejected URIs
這里設(shè)置一些鏈接不需要緩存,并且可以設(shè)置特例。
Rejected User Agents
這里設(shè)置某些 User Agents 來(lái)訪問(wèn)的時(shí)候不會(huì)緩存。比如 Google 和百度爬蟲(chóng)等。
Cache Contents
這里顯示你博客緩存文件和過(guò)期文件的數(shù)量,你可以手工刪除緩存文件和過(guò)期文件,因?yàn)?WP Super Cache 有垃圾回收機(jī)制,所以這里不幫不用手工刪除,如果當(dāng)你測(cè)試某個(gè)插件,看不到效果的時(shí)候,如果確定是緩存的原因,你可以到這里手工刪除測(cè)試下。
Lock Down
一般情況下,某篇日志如果有了新留言,就會(huì)更新緩存文件,不過(guò)這篇日志是否已經(jīng)到了緩存時(shí)間,但是在某種情況,你預(yù)料到你的博客可能會(huì)有很大流量和留言,候重復(fù)更新緩存文件可能并不是很好的選擇,速度反而更慢,這個(gè)時(shí)候你就可以鎖定緩存文件,新留言不再更新緩存日志。
插件作者也給出了一段代碼,如果你的博客鎖定了之后,可以通過(guò)判斷一個(gè)變量 WPLOCKDOWN 是否存在告來(lái)訴讀者,你博客已經(jīng)鎖定,待會(huì)才會(huì)更新,當(dāng)然了,一般博客不建議使用。
Directly Cached Files
直接緩存文件,根據(jù)永久鏈接直接緩存,比如你的關(guān)于頁(yè)面是不太更新,你就可以直接緩存它到你的 about 目錄下(假如你的關(guān)于頁(yè)面的 slug 是 about),這個(gè)直接緩存不會(huì)過(guò)期。適合一些經(jīng)常性不更新的靜態(tài)頁(yè)面。
Configuration messed up?
因?yàn)樯厦婺敲炊嗯渲?#xff0c;你可能搞糊涂了,那么這里可以讓你一鍵恢復(fù)到默認(rèn)。
Cache Plugins
緩存插件還支持附加插件,比如作者自己就提供一個(gè)插件:No Adverts for Friends,不對(duì)朋友顯示廣告。
附加說(shuō)明
- 登陸了和留言之后是看不到靜態(tài)緩存頁(yè)面的,看到的效果和原來(lái)的 WP-Cache 插件一樣的,一般來(lái)說(shuō)留言的同學(xué)不是那么多。
- 這個(gè)插件通過(guò) Mod Rewrite 來(lái)是實(shí)現(xiàn)訪問(wèn)靜態(tài)緩存頁(yè)面,所以首先你的主機(jī)要支持 Mod Rewrite,然后你要在 WordPress 后臺(tái)啟動(dòng)永久鏈接。
- 一些動(dòng)態(tài)的時(shí)時(shí)更細(xì)的插件,如 Recent Comments,Recent Posts 等,一個(gè)很好的解決方法是通過(guò) Javascript 來(lái)實(shí)現(xiàn)。所以同理 Sidebar 更新也只能在靜態(tài)頁(yè)面刷新的時(shí)候更新。我以后會(huì)講解下如何實(shí)現(xiàn) JS 實(shí)現(xiàn) Recent Comment, Recent Post, 和 PostViews 。
- 不要使用性能很差的主機(jī),盡管緩存了,但是還是不行的,這里我個(gè)人推薦我和朋友一起搞的主機(jī):WFANS 主機(jī)。
- 還有很多依賴于刷新數(shù)據(jù)的插件,如 SK2, Bad Behaviour 等可能不起作用。緩存總歸會(huì)帶來(lái)一點(diǎn)那個(gè)靈活性的不足。
這個(gè)插件我也使用的時(shí)間也不是很長(zhǎng),如果大家有什么新的發(fā)現(xiàn),也可以留言告訴我!
總結(jié)
以上是生活随笔為你收集整理的【转】最佳 WordPress 缓存插件:WP Super Cache的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 批量修改多目录下相同文件名的文件内容
- 下一篇: Sherri Sparks