Lighttpd als vervanger voor Apache


Omdat Apache in combinatie met php best wel veel geheugen vraagt, wil ik eens gaan onderzoeken of Lighttpd een goed alternatief is voor mij. Er zijn al legio mensen die veel grotere sites als de mijne hebben en naar volle tevredenheid Lighttpd gebruiken.

Installatie is als volgt:

# aptitude install lighttpd php5-cgi

Na afloop krijg ik een waarschuwing dat het geheel niet gestart kan worden, maar dat natuurlijk omdat poort 80 al in gebruik is door Apache.

Volgende stap is nu de configuratie aanpassen en een simpele statische html site beschikbaar maken.

# vi /etc/php5/cgi/php.ini
-> enable: cgi.fix_pathinfo = 1
# 

Vervolgens is er nog een probleem met het starten in combinatie met ipv6.

# /etc/init.d/lighttpd start
Starting web server: lighttpd2010-10-06 18:49:22: (network.c.358) can't bind to port: :: 80 Address already in use
 failed!

Geen idee waar dit nu weer vandaan komt. Want alhoewel ik voor heb ingesteld dat het geheel op poort 81 moet luisteren, toch wordt geprobeerd om op poort 80 een socket te openen. Ik vermoed dat het iets met ipv6 te maken heeft, getuige ook de bug.

Onderstaande regels geven in elk geval een startende Lighttp voor ipv4:

server.use-ipv6 = "enable"
# listen to ipv4
server.port               = "81"
server.bind               = "::"
# listen to ipv6
# $SERVER["socket"] == "[::]:81" {  }

De ipv6 heb ik uitgezet, omdat die een foutmelding geeft dat poort 81 al in gebruik is. Gelijktijdig ipv4 en ipv6 op dezelfde poort kan blijkbaar niet in Lighttpd.


2 responses to “Lighttpd als vervanger voor Apache”

  1. Gelijktijdig IPv4 en IPv6 met dezelfde poort gebruiken kan wel, als je het maar niet voor beide instelt :). Want dan gaat Lighttpd proberen te doen wat jij zegt en dan zal poort 81 inderdaad al in gebruik zijn. Ofwel als je voor zowel IPv4 als voor IPv6 dezelfde poort wilt gebruiken, moet je dat als volgt doen:

    #server.port               = "81"
    #server.bind               = "::"
    $SERVER["socket"] == "[::]:81" {  }
    
    • Klopt, daar was ik later ook achter gekomen :). Dit is wel een punt waarop ik Lighttpd in eerste instantie een beetje vaag vind qua configuratie. In Apache is het – vind ik – wat helderder hoe je op bepaalde ip’s en poorten kunt laten luisteren.

Leave a Reply

Your email address will not be published. Required fields are marked *