全球主机交流论坛

标题: nginx的第三方模块ETags要加两个参数哦 [打印本页]

作者: 诡谲    时间: 2009-11-13 16:34
标题: nginx的第三方模块ETags要加两个参数哦
刚刚发了一篇关于Etag的主题,发现还蛮多人讨论的...再说一个....安装教程在这里:第三方模块Etags介绍与安装

模块作者演示的.是直接在/根目录使用Etag,而我们要为一些静态元素添加Etag,所以我们要将这些文件后缀添加进来.用:

location ~ .*\.(htm|html|gif|jpg|jpeg|png|bmp|ico|rar|css|js|zip|xml|txt|flv|swf|mid|doc|cur|xls|pdf|txt|mp3|wma)$ {
      expires 7d;
      FileETag on;
      etag_format "%X%X";
}


这里大家发现多了一个参数.etag_format,这个其实在模块的c文件中可以找到.
/*
*  Two configuration elements: `enable_etags` and `etag_format`, specified in
*  the `Location` block.
*/
typedef struct {
    ngx_uint_t  FileETag;
    ngx_str_t   etag_format;
} ngx_http_static_etags_loc_conf_t;


默认的参数设置是:%s_%X_%X,表现出来的就是文件名和http协议版本,如:
HTTP/1.1 200 OK
Server: XCWS/1.0
Date: Fri, 13 Nov 2009 07:50:20 GMT
Content-Type: text/html
Content-Length: 7642
Last-Modified: Fri, 13 Nov 2009 02:41:02 GMT
Connection: keep-alive
Vary: Accept-Encoding
Etag: /readme.html HTTP/1.1
User-Agent_1DDA_4AFCC73E
Expires: Fri, 20 Nov 2009 07:50:20 GMT
Cache-Control: max-age=604800
Accept-Ranges: bytes


但是这个并没有作用,浏览器还是每次都要去服务器找这个文件并下载.所以我们要改这个参数设置.
我们之间在FileETag   on;后面直接再加一个etag_format "%X%X"; (Etag是基于标准16进制apache文件修改时间的)

之后我们再执行curl命令.OK.成功了.

$curl --head http://www.xmlchina.org/readme.html
HTTP/1.1 200 OK
Server: XCWS/1.0
Date: Fri, 13 Nov 2009 07:59:00 GMT
Content-Type: text/html
Content-Length: 7642
Last-Modified: Fri, 13 Nov 2009 02:41:02 GMT
Connection: keep-alive
Vary: Accept-Encoding
Etag: B638900D1DDA
Expires: Fri, 20 Nov 2009 07:59:00 GMT
Cache-Control: max-age=604800
Accept-Ranges: bytes

不建议将动态内容也使用Etag,要使用,请在动态脚本里面添加.

[ 本帖最后由 诡谲 于 2009-11-13 16:53 编辑 ]
作者: lemss    时间: 2009-11-13 16:42
好,我来围观一下
作者: mojave    时间: 2009-11-13 16:43
围观,期待这里有人再分享下自己测试经验
作者: 诡谲    时间: 2009-11-13 16:46
标题: 回复 3# 的帖子
用了几天了...
作者: 诡谲    时间: 2009-11-13 16:48
我的网站内容太多...
不然的话用Yslow随便都能达到A的评级...
作者: cpuer    时间: 2009-11-13 16:49
来个安装教程吧。
作者: 诡谲    时间: 2009-11-13 16:50
标题: 回复 6# 的帖子
额...
作者: cpuer    时间: 2009-11-13 16:53
标题: 回复 7# 的帖子

作者: mojave    时间: 2009-11-13 16:58
标题: 回复 4# 的帖子
欢迎你分享经验教程
作者: 诡谲    时间: 2009-11-13 17:07
标题: 回复 9# 的帖子
我重新编辑了.红色那个链接里面就有教程了.在debian下搞的.最新稳定版nginx
作者: cpuer    时间: 2009-11-13 17:10
标题: 回复 10# 的帖子
看到了
作者: mojave    时间: 2009-11-13 17:14
标题: 回复 10# 的帖子





欢迎光临 全球主机交流论坛 (https://hostloc-workers.ikyomon.com/) Powered by Discuz! X3.4