国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
Apache緩存mod_cache配置
 Apache緩存mod_cache配置
 
Apache 的緩存方式有兩種,一種是基于硬盤文件的緩存,由 mod_disk_cache 實(shí)現(xiàn),另一種是使用內(nèi)存緩存,由 mod_mem_cache 實(shí)現(xiàn),不過它們都是依賴 mod_cache 模塊的,mod_cache 模塊提供了一些緩存配置的指令供它們使用,而 mod_file_cache 模塊是搭配 mod_mem_cache 模塊使用的,下面分別進(jìn)行介紹。

1、基于硬盤文件的緩存
基于硬盤文件存儲(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 5
    CacheDirLength 5
    CacheMaxFileSize 1048576
    CacheMinFileSize 10
    </IfModule>
</IfModule>

把上面的配置加到 Apache 的 httpd.conf 文件中,如果緩存相關(guān)的模塊都已經(jīng)編譯進(jìn)了 Apache 的核心,則無需加載模塊,直接就能使用上面的指令。指令的詳細(xì)說明如下:

CacheDefaultExpire:設(shè)定緩存過期的時(shí)間(秒),默認(rèn)是1小時(shí),只有當(dāng)緩存的文檔沒有設(shè)置過期時(shí)間或最后修改時(shí)間時(shí)這個(gè)指令才會(huì)生效
CacheEnable:?jiǎn)⒂镁彺妫?個(gè)參數(shù)是緩存類弄,這里當(dāng)然是 disk了,第2個(gè)參數(shù)是緩存路徑,指的是 url 路徑,這里是緩存所有的東西,直接寫上“/”即可,如“/docs”則只緩存 /docs 下的所有文件
CacheRoot:緩存文件所在的目錄,運(yùn)行 Apache 的用戶(如daemon 或 nobody)要能對(duì)其進(jìn)行讀寫,如果不清楚的話可以直接設(shè)置成 777,請(qǐng)手動(dòng)建立該目錄并設(shè)置好訪問權(quán)限
CacheDirLevels:緩存目錄的深度,默認(rèn)是3,這里設(shè)置為5
CacheDirLength:緩存目錄名的字符長度,默認(rèn)是4,這里設(shè)置為5
CacheMaxFileSize 和 CacheMaxFileSize:緩存文件的最大值和最小值(byte),當(dāng)超過這個(gè)范圍時(shí)將不再緩存,這里設(shè)置為 1M 和 10bytes
基于硬盤文件存儲(chǔ)的文件基本上就這些內(nèi)容,設(shè)置好后重啟 Apache 應(yīng)該就能使用了。一切正常的話,可以在緩存目錄下看到 Apache 自動(dòng)建立的一些目錄和緩存的數(shù)據(jù)文件。

2、基于內(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)單說一下上面一些指令的意思:

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ǔ)或硬盤文件的存儲(chǔ)方式一起使用,只要指明不同的URL路徑即可。

3、注意事項(xiàng)
使用緩存需要注意如下事項(xiàng):

要使用緩存,必須使用指令 CacheEnable 啟用它,目前可用的緩存類型為 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 包含查詢字符串,如問號(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ì)被緩存

4、其它一些指令的介紹
如果你的網(wǎng)站有幾個(gè)文件的訪問非常頻繁而又不經(jīng)常變動(dòng),則可以在 Apache 啟動(dòng)的時(shí)候就把它們的內(nèi)容緩存到內(nèi)存中(當(dāng)然要啟用內(nèi)存緩存系統(tǒng)),使用的是 mod_file_cache 模塊,具體如下:
有多個(gè)文件可以用空格格開
MMapFile /var/www/html/index.html /var/www/html/articles/index.html
上面是緩存文件的內(nèi)容到內(nèi)存中,除此之外,還可以只緩存文件的打開句柄到內(nèi)存中,當(dāng)有請(qǐng)求進(jìn)來的時(shí)候,Apache 直接從內(nèi)存中獲取文件的句柄,返回內(nèi)容,和 MMapFile 指令很像,具體如下:
CacheFile /var/www/html/index.html /var/www/html/articles/index.html
上面兩個(gè)指令所緩存的文件如果有修改的話,必須重啟 Apache 或使用 graceful 之類的方式強(qiáng)制使 Apache 更新緩存數(shù)據(jù),否則當(dāng)用戶訪問的時(shí)候獲取的不是最新的數(shù)據(jù)。

有時(shí)候需要根據(jù)某些特殊的頭部信息來決定是否進(jìn)行緩存,則可以使用如下指令:
當(dāng)頭部信息中包含 Set-Cookie 時(shí)則跳過不進(jìn)行緩存操作
CacheIgnoreHeaders Set-Cookie
有時(shí)候需要緩存的時(shí)候跳過 URL 中的查詢字符串?使用如下指令:
CacheIgnoreQueryString On

Apache 的緩存系統(tǒng)不僅可以緩存服務(wù)器本身的文件,也可以緩存通過代理得到的內(nèi)容,對(duì)了,Apache 可以像 Squid 一樣做代理,而且做的還不錯(cuò),下篇文章就介紹一下 Apache 的代理功能吧。善用 Apache 的緩存功能,可以讓你的網(wǎng)站速度提升不少。做為一個(gè)網(wǎng)站來說,雖然可用的各種緩存方案很多,但在 Web 服務(wù)器層做緩存的效率還是很值得一試的。
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Apache代理緩存系統(tǒng) - 四博互聯(lián)客服中心
WP Super Cache使用全攻略 ? Wordpress插件
PHP教程 58 - 靜態(tài)頁面優(yōu)化(1)
httpd.conf中文說明
WordPress 加速緩存插件:WP Super Cache
apache tomcat mysql負(fù)載均衡和集群
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服