前面提到的一些缓存技术都是有我们的动态才程序控制的,现在的web服务器功能越来越强大,常用的web服务器软件也都内置了缓存功能,下面我们就简单的说下服务器端缓存的应用.
首先,我们先来介绍一下URL映射,对于所有web服务器我们向其发送Http请求,他解析后将结果返回给我们客户端,这听起来很简单么?真的是这样么,真相是web服务器还有很多“暗操作”,大家都知道Url重写技术吧,比如apache的mod_rewrite,这样的话我们请求的地址,很可能不是真正文件所存放的地址,取个简单的例子,我们请求
htt p://www.fuwuqi1.com/book/index.html页面,
这时候web服务器的也许会给他定位到 www/book/index.html,就是请求www文件夹下的book文件夹下的index.html 如果我们使用了URL 重写技术
比如Apache的rewrite,以上的url完全有可能定位到另一个文件路径下,例如可以定位到page/book/index.html路径
上面这属于“小暗操作” 下面我们看一下大一点还是上面的请求地址,服务器完全可以定位到一个动态的网页例如
定位到/reader.php?book=index这种重写很常见,它会使url更优雅,同时也更利于搜索引擎的收录
下面我们看看更变态的,一些大的网站为了实现负载均衡,他们吧URL定位到别的服务器上了
htt p://www.fuwuqi.com/read.php?book=index
这样的话肯定会添加一些网络开销,如果我们能做到让web服务器在第一次定向后就直接把内容给缓存下来,下次访问同一内容,首先检查一下本地缓存是不是有,如果有就不需要重定向到其他路径,或者服务器等这样会节省一些开销
这里只介绍了一些理论上的知识,下面还要考虑怎样配置缓存,缓存文件存放在哪里,缓存过期验证,缓存哪些内容,后续内容我会尽快补充上去。