lighty 的生活

lighty 开发者博客

lighttpd.net 运行在 1.5.0 上

lighttpd.net 的所有域名(博客、trac、www、xcache、upload 等)现在都已运行 lighttpd 1.5.0-trunk。解决 trac 处理 PATH_INFO 方式的问题需要一些调试 1841
以及 Ruby 如何通过 Unix 套接字处理 fastcgi-keepalive 请求 1850 1849

如果您发现某个站点宕机,请在 IRC 上给我(weigon)发消息。服务器正在 valgrind 中运行,应该能提供足够的信息来修复问题。

压缩

如果客户端支持,所有内容都会以压缩形式发送。由于某些浏览器在处理压缩的 JavaScript 和 CSS 时存在问题,我们目前只为 Firefox 启用了此功能。

deflate.mimetypes = ( "text/html" )

$HTTP["useragent"] =~ "Firefox" {
  deflate.mimetypes += ( "text/javascript", "text/css" )
}

trac

对于 trac,我使用

$HTTP["host"] =~ "^trac\.lighttpd\.net" {
    # alias, ...

    $HTTP["url"] =~ "^/trac/" {
        proxy-core.backends = ( "127.0.0.1:9090" )
        proxy-core.protocol = "fastcgi"
        proxy-core.rewrite-request = (
           "_pathinfo" => ( "^/trac(/.*)" => "$1" ),
           "_scriptname" => ( "^(/trac/)" => "$1" )
        )
    }
}

重写将 PATH_INFO 和 SCRIPT_NAME 设置调整为 trac 的需求。它还应该处理没有前缀的 trac 的旧错误。

rails + fastcgi

感谢我们在 blog.lighttpd.net 和 www.lighttpd.net 上运行的 rails 应用程序,我得以追踪到一些棘手的错误。其中一个仍未解决,与 fastcgi keepalive + fcgi.rb 有关。它尚未被彻底查明,目前不启用它似乎是安全的。

对于 mephisto,我们正在使用 cleanurl.lua 来摆脱 server.error-handler-404