May 17, 2012

Lighttpd 1.5 prerelease doesn't like Django

Whew. I spent quite a bit more time debugging this problem than it really should have taken. Django just wasn’t playing nice with the latest Lighttpd pre-release.

Long story short

Don’t use the prerelease, use the most recent 1.4.x stable. Save yourself hours of cursing and trace-debugging.

Analysis

Lighttpd had the following problems:

  • No request PATH_INFO. Django hates that. I hacked my testing version of Django to get past that, but no luck because.
  • Lighttpd just wouldn’t accept the response. I put in trace logs and found that my app was sending a perfect response, but Lighty just wouldn’t listen to it.

[tags]lighhtpd,django,python[/tags]