多语言展示
当前在线:172今日阅读:23今日分享:25

apache缓存如何设置

Apache 的缓存方式有两种,一种是基于硬盘文件的缓存,由 mod_disk_cache 实现,另一种是使用内存缓存,由 mod_mem_cache 实现,不过它们都是依赖 mod_cache 模块的,mod_cache 模块提供了一些缓存配置的指令供它们使用,而 mod_file_cache 模块是搭配 mod_mem_cache 模块使用的,下面分别进行介绍。
工具/原料

电脑

方法/步骤
2

基于内存的缓存基于内存的缓存主要由 mod_mem_cache 模块实现,还是看个简单的配置吧,这样比较直观:-)          CacheEnable mem /       MCacheMaxObjectCount 20000       MCacheMaxObjectSize 1048576       MCacheMaxStreamingBuffer 65536       MCacheMinObjectSize 10       MCacheRemovalAlgorithm GDSF       MCacheSize 131072   简单说一下上面一些指令的意思:CacheEnable:启用缓存,使用基于内存的方式存储MCacheMaxObjectCount:在内存中最多能存储缓存对象的个数,默认是1009,这里设置为20000MCacheMaxObjectSize:单个缓存对象最大为 1M,默认是10000bytesMCacheMaxStreamingBuffer:在缓冲区最多能够放置多少的将要被缓存对象的尺寸,这里设置为 65536,该值通常小于100000或 MCacheMaxObjectSize 设置的值MCacheMinObjectSize:单个缓存对象最小为10bytes,默认为1bytesMCacheRemovalAlgorithm:清除缓存所使用的算法,默认是 GDSF,还有一个是LRU,可以查一下 Apache 的官方文档,上面有些介绍MCacheSize:缓存数据最多能使用的内存,单位是 kb,默认是100kb,这里设置为128M保存重启 Apache 基于内存的缓存系统应该就能生效了,根据需要可以使基于内存的存储或硬盘文件的存储方式一起使用,只要指明不同的URL路径即可。

注意事项
1

要使用缓存,必须使用指令 CacheEnable 启用它,目前可用的缓存类型为 disk 或 mem,禁止缓存可以使用 CacheDisable,如 CacheDisable /private

2

待缓存的 URL 返回的状态值必须为: 200、203、300、301 或 410

3

URL 的请求方式必须是 GET 方式

4

发送请求时,头部中包含 “Authorization: ”的字符串时,返回的内容将不会被缓存

5

URL 包含查询字符串,如问号?后的那些东西,除非返回的内容包含“Expires:”,否则不会被缓存

6

如果返回的状态值是 200,则返回的头部信息必须包含以下的一种才会被缓存:Etag、Last-Modified、Expires,除非设置了指令 CacheIgnoreNoLastMod On

7

如果返回内容的头部信息“Cache-Control:”中包含“private”,除非设置了指令 CacheStorePrivate On,否则不会被缓存

8

如果返回内容的头部信息“Cache-Control:”中包含“no-sotre”,除非设置了指令 CacheStoreNoStore On,否则不会被缓存

9

如果返回内容的头部信息“Vary:”中包含了“*”,不会被缓存

推荐信息