HTML/CSS

浏览器缓存实现原理

博客分类: 

浏览器缓存将文件保存在客户端,好的缓存策略可以减少对网络带宽的占用,可以提高访问速度,提高用户的体验,还可以减轻服务器的负担。因此我们有必要了解它的实现原理,用来提高网站的性能。
当一个客户端请求web服务器, 请求的内容可以从以下几个地方获取:服务器、浏览器缓存中或缓存服务器中。这取决于服务器端输出的页面信息。页面文件有三种缓存状态。
1.最新的:选择不缓存页面,每次请求时都从服务器获取最新的内容。
2.未过期的:在给定的时间内缓存,如果用户刷新或页面过期则去服务器请求,否则将读取本地的缓存,这样可以提高浏览速度。
3.过期的:也就是陈旧的页面,当请求这个页面时,必须进行重新获取。

页面的缓存状态是由http header决定的,一个浏览器请求信息,一个是服务器响应信息。主要包括Pragma: no-cache、Cache-Control、 Expires、 Last-Modified、If-Modified-Since。其中Pragma: no-cache由HTTP/1.0规定,Cache-Control由HTTP/1.1规定。

Cache-Control的主要参数

[转]HTTP头的Expires与Cache-control

博客分类: 

1.概念

Cache-control用于控制HTTP缓存(在HTTP/1.0中可能部分没实现,仅仅实现了Pragma: no-cache)

数据包中的格式:

Cache-Control: cache-directive

cache-directive可以为以下:

request时用到:

| "no-cache"
| "no-store"
| "max-age" "=" delta-seconds
| "max-stale" [ "=" delta-seconds ]
| "min-fresh" "=" delta-seconds
| "no-transform"
| "only-if-cached"
| "cache-extension"

response时用到:

UTF-8和utf-8区别

博客分类: 

昨天使用flash时候出现配置信息XML文件读取失败的情况。

经过一位同事的帮忙,最终确定是编码格式的问题。但是我是UTF-8以及Unix下编码。后来,我查看XML文件,发现头部的encoding="utf-8",我将其改为大写UTF-8,问题竟然奇迹般解决了。

上网搜的结果基本都认为windows不区分大小写,UTF-8和utf-8没有区别。但是写成UTF-8会更标准。国际标准是UTF-8而不是utf-8。

另外,顺便提下,mysql内只能用set name=utf8;这是由于mysql解析的原因,跟上面说的不是一回事情了。

鼠标的几种形状

博客分类: 

鼠标的几种形状

<INPUT   TYPE=\"submit\"   style=\"cursor:   pointer\"   value=\"hand\">  

形状值如下:
  auto                     :标准光标  
  default               :标准箭头  
  pointer                     :手形光标  
  wait                     :等待光标  
  text                     :I形光标  
  vertical-text   :水平I形光标  
  no-drop               :不可拖动光标  
  not-allowed       :无效光标  
  help                     :?帮助光标  
  all-scroll         :三角方向标  
  move                     :移动标  
  crosshair           :十字标

页面