James Tauber

journeyman of some

blog > 2006 > 04 >

James Tauber's Blog 2006/04/29

lighttpd and launchd

On a couple of occasions, I've noticed lighttpd silently dying on my remote Mac Mini that serves up a bunch of my sites including Quisition. I was switching hemispheres earlier in the week and so didn't notice for days. So I finally decided to get around to learning how to use launchd.

Turned out to be very simple.

I previously manually started lighttpd with:

sudo /usr/local/sbin/lighttpd -f /usr/local/www/lighttpd.conf

To start it (and keep it running) using launchd, I created a file:

sudo pico /Library/LaunchDaemons/net.lighttpd.plist

with the following content:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" 
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>net.lighttpd</string>
    <key>OnDemand</key>
    <false/>
    <key>Program</key>
    <string>/usr/local/sbin/lighttpd</string>
    <key>ProgramArguments</key>
    <array>
        <string>/usr/local/sbin/lighttpd</string>
        <string>-f/usr/local/www/lighttpd.conf</string>
        <string>-D</string>
    </array>
</dict>
</plist>

(note the extra -D option) and told launchd about it with:

sudo launchctl load /Library/LaunchDaemons/net.lighttpd.plist

Just for fun, I tried killing lighttpd and launchd had dutifully restarted it before I had time to type 'ps aux'

by jtauber : Created on April 29, 2006 : Last modified April 29, 2006 : Categories os_x quisition lighttpd launchd : 0 comments (permalink)