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。