做web开发,缓存缓存缓存,哪里貌似都能看到缓存的身影…
一个最终用户访问一个网页,从浏览器发出请求,到接收请求,时间大体消耗在了这几个部分:
1.建立tcp/ip握手连接
2.浏览器向服务器传送请求数据
3.服务器处理数据
4.服务器返回数据
如果用户请求的资源很少改变,如js、css、图片之类的静态文件,如果每次用户的请求都需要占用服务器资源区处理,再如果一个用户和服务器位于太平洋两岸,那么时间就浪费在了网络传输和服务器处理上了,这种情况下,应该使用cache
在离用户最近的地方,增加一个缓存服务器,将不常修改的静态文件缓存起来,用户的请求就可以直接由缓存服务器来处理,而不再劳烦web服务器了
一般缓存服务器,代理服务器和反向代理服务器在一起,即,一个appache httpd同时开启了缓存功能与代理功能。只是这台服务器从不同功能角度被称为不同的名字。俺的blog appache就是最前端的web server,后端木有服务器了…
HTTP缓存是遵循http协议实现的,控制缓存行为的字段均在http header中
appache的缓存是依赖mod_cache实现的,所以在安装appache的时./configure要–enable-cache –enable-disk-cache –enable-mem-cache –enable-file-cache
mod_disk_cache基于磁盘的存储管理模块
mod_mem_cache基于内存的存储管理模块
两种都基于mod_cache
基于mod_disk_cache的缓存
1.载入mod_cache和mod_disk_cache模块
在httpd.conf添加cache_module modules/mod_cache.so和cache_disk_module modules/mod_cache_disk.so两行
2.到需要使用静态缓存的virtual host中添加:
好的,配置完成了…
但是blog.feehi.com依然是no-cache。。。
php开启了session的页面,不允许缓存…session在header中就输出了no-cache。所以再在virtual host中添加:
正常缓存了
转载请注明:飞嗨 » appache配置静态缓存