開(kāi)起mod_cache

基于硬盤(pán)文件的緩存
基于硬盤(pán)文件存儲(chǔ)的緩存由 mod_disk_cache 模塊實(shí)現(xiàn),先看個(gè)簡(jiǎn)單的配置例子:
<IfModule mod_cache.c>
CacheDefaultExpire 86400<IfModule mod_disk_cache.c> CacheEnable disk / CacheRoot /tmp/apacheCache CacheDirLevels 5CacheDirLength 5CacheMaxFileSize 1048576CacheMinFileSize 10</IfModule></IfModule>
把上面的配置加到 Apache 的 httpd.conf 文件中,如果緩存相關(guān)的模塊都已經(jīng)編譯進(jìn)了 Apache 的核心,則無(wú)需加載模塊,直接就能使用上面的指令。指令的詳細(xì)說(shuō)明如下:
CacheDefaultExpire:設(shè)定緩存過(guò)期的時(shí)間(秒),默認(rèn)是1小時(shí),只有當(dāng)緩存的文檔沒(méi)有設(shè)置過(guò)期時(shí)間或最后修改時(shí)間時(shí)這個(gè)指令才會(huì)生效
CacheEnable:?jiǎn)⒂镁彺妫?個(gè)參數(shù)是緩存類(lèi)弄,這里當(dāng)然是 disk了,第2個(gè)參數(shù)是緩存路徑,指的是 url 路徑,這里是緩存所有的東西,直接寫(xiě)上“/”即可,如“/docs”則只緩存 /docs 下的所有文件
CacheRoot:緩存文件所在的目錄,運(yùn)行 Apache 的用戶(hù)(如daemon 或 nobody)要能對(duì)其進(jìn)行讀寫(xiě),如果不清楚的話(huà)可以直接設(shè)置成 777,請(qǐng)手動(dòng)建立該目錄并設(shè)置好訪(fǎng)問(wèn)權(quán)限
CacheDirLevels:緩存目錄的深度,默認(rèn)是3,這里設(shè)置為5
CacheDirLength:緩存目錄名的字符長(zhǎng)度,默認(rèn)是4,這里設(shè)置為5
CacheMaxFileSize 和 CacheMaxFileSize:緩存文件的大值和最小值(byte),當(dāng)超過(guò)這個(gè)范圍時(shí)將不再緩存,這里設(shè)置為 1M 和 10bytes
基于硬盤(pán)文件存儲(chǔ)的文件基本上就這些內(nèi)容,設(shè)置好后重啟 Apache 應(yīng)該就能使用了。一切正常的話(huà),可以在緩存目錄下看到 Apache 自動(dòng)建立的一些目錄和緩存的數(shù)據(jù)文件。
基于內(nèi)存的緩存
基于內(nèi)存的緩存主要由 mod_mem_cache 模塊實(shí)現(xiàn),還是看個(gè)簡(jiǎn)單的配置吧,這樣比較直觀:-)
<IfModule mod_cache.c>
<IfModule mod_mem_cache.c> CacheEnable mem / MCacheMaxObjectCount 20000 MCacheMaxObjectSize 1048576 MCacheMaxStreamingBuffer 65536 MCacheMinObjectSize 10 MCacheRemovalAlgorithm GDSF MCacheSize 131072</IfModule></IfModule>
簡(jiǎn)單說(shuō)一下上面一些指令的意思:
CacheEnable:?jiǎn)⒂镁彺妫褂没趦?nèi)存的方式存儲(chǔ)
MCacheMaxObjectCount:在內(nèi)存中最多能存儲(chǔ)緩存對(duì)象的個(gè)數(shù),默認(rèn)是1009,這里設(shè)置為20000
MCacheMaxObjectSize:?jiǎn)蝹€(gè)緩存對(duì)象大為 1M,默認(rèn)是10000bytes
MCacheMaxStreamingBuffer:在緩沖區(qū)最多能夠放置多少的將要被緩存對(duì)象的尺寸,這里設(shè)置為 65536,該值通常小于100000或 MCacheMaxObjectSize 設(shè)置的值
MCacheMinObjectSize:?jiǎn)蝹€(gè)緩存對(duì)象最小為10bytes,默認(rèn)為1bytes
MCacheRemovalAlgorithm:清除緩存所使用的算法,默認(rèn)是 GDSF,還有一個(gè)是LRU,可以查一下 Apache 的官方文檔,上面有些介紹
MCacheSize:緩存數(shù)據(jù)最多能使用的內(nèi)存,單位是 kb,默認(rèn)是100kb,這里設(shè)置為128M
保存重啟 Apache 基于內(nèi)存的緩存系統(tǒng)應(yīng)該就能生效了,根據(jù)需要可以使基于內(nèi)存的存儲(chǔ)或硬盤(pán)文件的存儲(chǔ)方式一起使用,只要指明不同的URL路徑即可。
注意事項(xiàng)
使用緩存需要注意如下事項(xiàng):
要使用緩存,必須使用指令 CacheEnable 啟用它,目前可用的緩存類(lèi)型為 disk 或 mem,禁止緩存可以使用 CacheDisable,如 CacheDisable /private
待緩存的 URL 返回的狀態(tài)值必須為: 200、203、300、301 或 410
URL 的請(qǐng)求方式必須是 GET 方式
發(fā)送請(qǐng)求時(shí),頭部中包含 “Authorization: ”的字符串時(shí),返回的內(nèi)容將不會(huì)被緩存
URL 包含查詢(xún)字符串,如問(wèn)號(hào)?后的那些東西,除非返回的內(nèi)容包含“Expires:”,否則不會(huì)被緩存
如果返回的狀態(tài)值是 200,則返回的頭部信息必須包含以下的一種才會(huì)被緩存:Etag、Last-Modified、Expires,除非設(shè)置了指令 CacheIgnoreNoLastMod On
如果返回內(nèi)容的頭部信息“Cache-Control:”中包含“private”,除非設(shè)置了指令 CacheStorePrivate On,否則不會(huì)被緩存
如果返回內(nèi)容的頭部信息“Cache-Control:”中包含“no-sotre”,除非設(shè)置了指令 CacheStoreNoStore On,否則不會(huì)被緩存
如果返回內(nèi)容的頭部信息“Vary:”中包含了“*”,不會(huì)被緩存
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。
網(wǎng)站題目:apache系列(服務(wù)器緩存)-創(chuàng)新互聯(lián)
網(wǎng)頁(yè)路徑:http://chinadenli.net/article36/digdpg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄、定制網(wǎng)站、網(wǎng)站設(shè)計(jì)公司、網(wǎng)站改版、App設(shè)計(jì)、網(wǎng)站維護(hù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容