DevelProblemAndSolution » History » Revision 2
Revision 1 (moo, 2007-08-14 04:27) → Revision 2/19 (moo, 2007-08-14 04:51)
[[PageOutline]] = Developmenet Problem And Solution = This page is meant to list Problem And Solutions implementing lighttpd. Any feature requests should be go to [/trac/newticket ticket system]. = Redundant FastCGI/SCGI etc = == == === Problem == === In lighttpd 1.4, most of the source code of mod_cgi, mod_scgi and mod_proxy were cut'n'pasted from mod_fastcgi. Why: Redundant code make it hard to maintain. == === Solution == === combine them into mod_proxy_core and add protocols around it * the core provides * config handling * connect/retry on failure * fork/restart worker child on dead. (easier to improve native win32 support) * balancing * x-sendfile * the protocol backends take care of * preparing the environment (most cgi env code can be shared) * encode/decode data * handle io Why: scgi/fastcgi/ejb/http or whatever, are just protocols that we can use to send requests to and get response from backend. == === Status == === Implemented in 1.5.0