Lighttpd中mod_compress关于etag的一个bug

Sunday, March 9th, 2008 @ 18:09

这几日一直在摆弄lighttpd,好不容易弄的差不多了,却出现了个诡异的事情:

在1.4.18版本中,使用mod_compress给一些静态文件如js、css启用了gzip压缩之后,无论 static-file.etags 如何设置,etag头部总是会被输出。

static-file.etags 是一个1.4.15新加命令,用于控制是否启用etag。以前在Apache2上我也发现无法通过 FileETag None 关闭etag的情况。以为是协议设计使然,在rfc2616上兜了一圈,无果,八成是个bug了。在lighttpd的trac上开了一个ticket:http://trac.lighttpd.net/trac/ticket/1585

查看了mod_compress的代码,发现里面确实没去 static-file.etags 的设置,直接输出etag。看来mod_compress的作者没有注意到这个新加的命令。

花一个下午加了些hack,在Ubuntu/6.06+lighttpd/1.4.18上测试通过,能够处理 static-file.etags 选项。

patch文件可以在 http://trac.lighttpd.net/trac/attachment/ticket/1585/mod_compress.c.diff?format=raw 得到。

最后说一句:开源很好很强大。

Tags: , , , , ,
Posted in t | 4 Comments »

4 Responses to “Lighttpd中mod_compress关于etag的一个bug”

  1. su27 says:

    oh,lighttpd也用的trac啊。。。

  2. georgexsh says:

    douban也是?
    svn基本都在用trac搭配吧

  3. ansin says:

    请问站长 首页上的blog连接 是怎么弄出来的,MT默认有这功能吗?
    还是自己动手加进摸版的,谢谢。
    可以帮我看看吗

  4. georgexsh says:

    blogoroll么?我是自己加的一个widget,手工写的链接~
    我给你回了邮件但是退信了

Leave a Reply