<?xml version="1.0" encoding="UTF-8"?>
<feed xml:lang="en-US" xmlns="http://www.w3.org/2005/Atom">
  <title>lighttpd - Home</title>
  <id>tag:www.lighttpd.net,2008:mephisto/</id>
  <generator version="0.7.3" uri="http://mephistoblog.com">Mephisto Noh-Varr</generator>
  <link href="http://www.lighttpd.net/feed/atom.xml" rel="self" type="application/atom+xml"/>
  <link href="http://www.lighttpd.net/" rel="alternate" type="text/html"/>
  <updated>2008-03-24T15:07:23Z</updated>
  <entry xml:base="http://www.lighttpd.net/">
    <author>
      <name>darix</name>
    </author>
    <id>tag:www.lighttpd.net,2008-03-10:614</id>
    <published>2008-03-10T23:44:00Z</published>
    <updated>2008-03-24T15:07:23Z</updated>
    <category term="download"/>
    <link href="http://www.lighttpd.net/2008/3/10/1-4-19-made-in-germany" rel="alternate" type="text/html"/>
    <title>1.4.19 - Made in Germany</title>
<content type="html">
            &lt;p&gt;Long time no see.&lt;/p&gt;
&lt;p&gt;
  It has been almost half a year since 1.4.18. 6months. Jan has been working on many
  interesting features for 1.5. [&lt;a href=&quot;#f1&quot;&gt;1&lt;/a&gt;] Currently he ports it to
  &lt;a href=&quot;http://blog.lighttpd.net/articles/2008/02/19/project-glib-it-compiles-mostly&quot;&gt;glib2&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
  But back to 1.4.19. Yes again the release date was nailed down by a few security bugs. *cough*
  Nevertheless we got a ton of other nice bugfixes. All praise our new lighttpd hero
  Stefan B&amp;uuml;hler. Big thank you from my side. (darix)
&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;
    &lt;a href=&quot;/security/lighttpd_sa_2008_01.txt&quot;&gt;lighttpd_sa_2008_01.txt&lt;/a&gt;
    (patch: &lt;a href=&quot;/security/lighttpd-1.4.x_high_load_dos.patch&quot;&gt;lighttpd-1.4.x_high_load_dos.patch&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;
    &lt;a href=&quot;/security/lighttpd_sa_2008_02.txt&quot;&gt;lighttpd_sa_2008_02.txt&lt;/a&gt;
    (patch: &lt;a href=&quot;/security/lighttpd-1.4.x_mod_cgi_disclosure.patch&quot;&gt;lighttpd-1.4.x_mod_cgi_disclosure.patch&lt;/a&gt;)
  &lt;/li&gt;
  &lt;li&gt;
    &lt;a href=&quot;/security/lighttpd_sa_2008_03.txt&quot;&gt;lighttpd_sa_2008_03.txt&lt;/a&gt;
    (patch: &lt;a href=&quot;/security/lighttpd-1.4.x_mod_userdir_disclosure.patch&quot;&gt;lighttpd-1.4.x_mod_userdir_disclosure.patch&lt;/a&gt;)
  &lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Download&lt;/h2&gt;
&lt;ul&gt;
  &lt;li&gt;
  &lt;a href=&quot;/download/lighttpd-1.4.19.tar.gz&quot;&gt;lighttpd-1.4.19.tar.gz&lt;/a&gt;&lt;br /&gt;
  (&lt;code&gt;sha1sum: 79e2d61dd9017c3c50c0fe98b2289cae5c1255ee&lt;br /&gt;
  md5sum: cede410e7adee3ea14206749190a8b5d&lt;/code&gt; )
  &lt;/li&gt;
  &lt;li&gt;
  &lt;a href=&quot;/download/lighttpd-1.4.19.tar.bz2&quot;&gt;lighttpd-1.4.19.tar.bz2&lt;/a&gt;&lt;br /&gt;
  (&lt;code&gt;sha1sum: fd4450e7faae55ebe0905114722995b0c57397cc&lt;br /&gt;
  md5sum: d787374e4e4aaa09d5cfa9ab9d23ad40&lt;/code&gt;)
  &lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Changes&lt;/h2&gt;
&lt;ul&gt;
  &lt;li&gt;added support for If-Range: &amp;lt;date&amp;gt; (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1346&quot;&gt;#1346&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;added support for matching $HTTP[&quot;scheme&quot;] in configs&lt;/li&gt;
  &lt;li&gt;fixed initgroups() called after chroot (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1384&quot;&gt;#1384&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;fixed case-sensitive check for Auth-Method (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1456&quot;&gt;#1456&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;execute fcgi app without /bin/sh if used as argument to spawn-fcgi (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1428&quot;&gt;#1428&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;fixed a bug that made /-prefixed extensions being handled also when matching the end of the uri in fcgi,scgi and proxy modules (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1489&quot;&gt;#1489&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;print error if X-LIGHTTPD-send-file cannot be done; reset header Content-Length for send-file. Patches by Stefan Buehler&lt;/li&gt;
  &lt;li&gt;prevent crash in certain php-fcgi configurations (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/841&quot;&gt;#841&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;add IdleServers and Scoreboard directives in ?auto mode for mod_status (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1507&quot;&gt;#1507&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;open log immediately after daemonizing, fixes SIGPIPEs on startup  (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/165&quot;&gt;#165&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;HTTPS env var should be &quot;on&quot; when using mod_extforward and the X-Forwarded-Proto header is set. (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1499&quot;&gt;#1499&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;generate ETag and Last-Modified headers for mod_ssi based on newest modified include (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1491&quot;&gt;#1491&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;support letterhomes in mod_userdir (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1473&quot;&gt;#1473&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;support chained proxies in mod_extforward (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1528&quot;&gt;#1528&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;fixed bogus &quot;cgi died ?&quot; if we kill the CGI process on shutdown&lt;/li&gt;
  &lt;li&gt;fixed ECONNRESET handling in network-openssl&lt;/li&gt;
  &lt;li&gt;fixed handling of EAGAIN in network-linux-sendfile (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/657&quot;&gt;#657&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;reset conditional cache (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1164&quot;&gt;#1164&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;create directories in mod_compress (was broken with alias/userdir) (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1027&quot;&gt;#1027&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;fixed out of range access in fd array (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1562&quot;&gt;#1562&lt;/a&gt;, &lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/372&quot;&gt;#372&lt;/a&gt;) (&lt;a href=&quot;http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-0983&quot;&gt;CVE-2008-0983&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;mod_compress should check if the request is already handled, e.g. by fastcgi (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1565&quot;&gt;#1565&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;remove broken workaround for buggy Opera version with ssl/chunked encoding (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/285&quot;&gt;#285&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;generate etag/last-modified header for on-the-fly-compressed files (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1171&quot;&gt;#1171&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;req-method OPTIONS: do not insert default response if request was denied, do not deny OPTIONS by default (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1324&quot;&gt;#1324&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;fixed memory leak on windows (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1347&quot;&gt;#1347&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;fixed building outside of the src dir (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1349&quot;&gt;#1349&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;fixed including of stdint.h/inttypes.h in etag.c (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1413&quot;&gt;#1413&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;do not add Accept-Ranges header if range-request is disabled (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1449&quot;&gt;#1449&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;log the ip of failed auth tries in error.log (enhancement &lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1544&quot;&gt;#1544&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;fixed RoundRobin in mod_proxy (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/516&quot;&gt;#516&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;check for symlinks after successful pathinfo matching (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1574&quot;&gt;#1574&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;fixed mod-proxy.t to run with a builddir outside of the src dir&lt;/li&gt;
  &lt;li&gt;do not suppress content on &quot;307 Temporary Redirect&quot; (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1412&quot;&gt;#1412&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;fixed Content-Length header if response body gets removed in connections.c (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1412&quot;&gt;#1412&lt;/a&gt;, part 2)&lt;/li&gt;
  &lt;li&gt;do not generate a &quot;Content-Length: 0&quot; header for HEAD requests, added test too&lt;/li&gt;
  &lt;li&gt;remove compress cache file if compression or write failed (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1150&quot;&gt;#1150&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;fixed body handling of status 300 requests &lt;/li&gt;
  &lt;li&gt;spawn-fcgi: only try to connect to unix socket (not tcp) before spawning (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1575&quot;&gt;#1575&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;fix sending source of cgi script instead of 500 error if fork fails (&lt;a href=&quot;http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-1111&quot;&gt;CVE-2008-1111&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;fix min-procs handling in mod_scgi.c, just set to max-procs (patch from &lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/623&quot;&gt;#623&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;fix sending &quot;408 - Timeout&quot; instead of &quot;410 - Gone&quot; for timedout urls in mod_secdownload (&lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1440&quot;&gt;#1440&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;workaround &lt;a href=&quot;http://trac.lighttpd.net/trac/ticket/1587&quot;&gt;#1587&lt;/a&gt;: require userdir.path to be set to enable mod_userdir (empty string allowed) (&lt;a href=&quot;http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-1270&quot;&gt;CVE-2008-1270&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;make configure checks for --with-pcre, --with-zlib and --with-bzip2 failing if the headers aren't found&lt;/li&gt;
  &lt;li&gt;fixed handling of waitpid() == EINTR mod_ssi on solaris &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;[&lt;a&gt;1&lt;/a&gt;] No. We don't have a release date for it. Especially not with all the big changes going on.&lt;br /&gt;&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://www.lighttpd.net/">
    <author>
      <name>jan</name>
    </author>
    <id>tag:www.lighttpd.net,2008-01-23:607</id>
    <published>2008-01-23T16:49:00Z</published>
    <updated>2008-01-23T17:05:50Z</updated>
    <link href="http://www.lighttpd.net/2008/1/23/mono-fastcgi" rel="alternate" type="text/html"/>
    <title>Mono + FastCGI</title>
<content type="html">
            &lt;p&gt;&lt;a href=&quot;http://www.reggieburnett.com&quot;&gt;Reggie&lt;/a&gt; pointed me to the &lt;a href=&quot;http://www.mono-project.com/FastCGI&quot;&gt;FastCGI support for Mono&lt;/a&gt;. For our lighttpd they have a &lt;a href=&quot;http://www.mono-project.com/FastCGI_Lighttpd&quot;&gt;full featured page&lt;/a&gt; that should cover all possible configuration needs.&lt;/p&gt;

&lt;p&gt;Feel free to try it out and comment on this article if it works as expected.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://www.lighttpd.net/">
    <author>
      <name>jan</name>
    </author>
    <id>tag:www.lighttpd.net,2007-10-28:596</id>
    <published>2007-10-28T10:50:00Z</published>
    <updated>2007-10-28T13:35:06Z</updated>
    <link href="http://www.lighttpd.net/2007/10/28/giving-solaris-some-love" rel="alternate" type="text/html"/>
    <title>Giving Solaris some love</title>
<summary type="html">&lt;p&gt;Weekend time is hacking time. This weekend it is about getting 1.5.0 running nicely on Solaris and making sure lighttpd is a first class citizen there.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;All tests successful (1 subtest UNEXPECTEDLY SUCCEEDED), 88 subtests skipped.
Files=22, Tests=324, 60 wallclock secs ( 1.98 cusr +  1.03 csys =  3.01 CPU)
&lt;/code&gt;&lt;/pre&gt;</summary><content type="html">
            &lt;p&gt;Weekend time is hacking time. This weekend it is about getting 1.5.0 running nicely on Solaris and making sure lighttpd is a first class citizen there.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;All tests successful (1 subtest UNEXPECTEDLY SUCCEEDED), 88 subtests skipped.
Files=22, Tests=324, 60 wallclock secs ( 1.98 cusr +  1.03 csys =  3.01 CPU)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The over all situation hasn't changed: I still don't have a solaris box here for development here and I think that's a good thing. Instead I run Nexenta (aka gnu/solaris) in a VMware on WinXP/x64. And use ssh to log into it :)&lt;/p&gt;

&lt;p&gt;I would like to do the same with my MacOSX too. Up to now I use the MacMini (the old, PPC one) and only log in via ssh for compiling too. Turning it into a vmware image I can start up when needed would be a lot better as it doesn't require me to start another load, power-consuming box.&lt;/p&gt;

&lt;p&gt;But back solaris:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;compiles cleanly on solaris 11 with GCC&lt;/li&gt;
&lt;li&gt;runs test-suite cleanly&lt;/li&gt;
&lt;li&gt;detects special features and uses them (sendfilev, /dev/poll)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This should make the current trunk/ running nicely on Solaris. So, give it a try please so we can push out 1.5.0 soon.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://www.lighttpd.net/">
    <author>
      <name>jan</name>
    </author>
    <id>tag:www.lighttpd.net,2007-04-04:278</id>
    <published>2007-04-04T06:44:00Z</published>
    <updated>2007-04-04T07:09:13Z</updated>
    <link href="http://www.lighttpd.net/2007/4/4/powered-by-lighttpd" rel="alternate" type="text/html"/>
    <title>Powered by Lighttpd</title>
<content type="html">
            &lt;p&gt;&lt;code&gt;lighttpd&lt;/code&gt; is used by many well-known sites. The typical scenario is using lighttpd as off-load server to &lt;a href=&quot;http://lighttpd.net/benchmark&quot;&gt;push out static content&lt;/a&gt; and leave to complex work to another server. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://news.netcraft.com/archives/2007/04/02/april_2007_web_server_survey.html&quot;&gt;Lighttpd enters the Top5&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://blog.lighttpd.net/articles/2006/12/28/lighttpd-powers-5-alexa-top-250-sites&quot;&gt;Lighttpd powers 5 Alexa Top 250 sites&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One example is &lt;a href=&quot;http://youtube.com/&quot;&gt;YouTube&lt;/a&gt;. They have a farm of servers which push out the thumbnails you see before you see the movies:&lt;/p&gt;

&lt;pre&gt;
$ curl -I http://sjl-static16.sjl.youtube.com/vi/TgF_eRkfqEY/2.jpg
HTTP/1.1 200 OK
Content-Type: image/jpeg
ETag: &quot;983726135810477085&quot;
Accept-Ranges: bytes
Last-Modified: Fri, 03 Feb 2006 04:32:53 GMT
Content-Length: 3495
Date: Wed, 04 Apr 2007 06:49:51 GMT
Server: lighttpd-aio/1.4.11.8
&lt;/pre&gt;

&lt;p&gt;As you see in the name-scheme, there are some more of those servers pushing out content.&lt;/p&gt;

&lt;p&gt;On wikipedia they run at least 2 servers with lighttpd:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;upload.wikimedia.org&lt;/li&gt;
&lt;li&gt;download.wikimedia.org&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;While &lt;code&gt;download&lt;/code&gt; is used to distribute the SQL dumps of the database when tend to grow above the magic 4GByte border, upload is used to push out all the images and resize them when necessary.&lt;/p&gt;

&lt;pre&gt;
$ curl -I http://upload.wikimedia.org/wikipedia/commons/thumb/2/21/Mandel_zoom_00_mandelbrot_set.jpg/250px-Mandel_zoom_00_mandelbrot_set.jpg
HTTP/1.0 200 OK
Content-Type: image/jpeg
ETag: &quot;6460328581220324712&quot;
Accept-Ranges: bytes
Last-Modified: Mon, 04 Dec 2006 22:24:53 GMT
Content-Length: 5973
Date: Wed, 14 Mar 2007 11:16:19 GMT
Server: lighttpd/1.4.13
X-Cache: HIT from sq13.wikimedia.org
X-Cache-Lookup: HIT from sq13.wikimedia.org:3128
X-Cache: HIT from knsq12.knams.wikimedia.org
X-Cache-Lookup: HIT from knsq12.knams.wikimedia.org:3128
Age: 6265
X-Cache: HIT from knsq10.knams.wikimedia.org
X-Cache-Lookup: HIT from knsq10.knams.wikimedia.org:80
Via: 1.0 sq13.wikimedia.org:3128 (squid/2.6.STABLE12), 1.0 knsq12.knams.wikimedia.org:3128 (squid/2.6.STABLE12), 1.0 knsq10.knams.wikimedia.org:80 (squid/2.6.STABLE12)
Connection: close
&lt;/pre&gt;
          </content>  </entry>
</feed>
