wordpress und lighttpd

(Für lighttpd 1.5 bitte hier klicken)

Wer wordpress mit lighttpd als webserver laufen lassen will, kann nicht auf die von wordpress generierten .htaccess-Dateien zurückgreifen, da lighttpd diese ignoriert. Hier ist eine gute und einfache Lösung für dieses Problem. [1]

$HTTP["host"] =~ "nerdlabor\.de" {
var.wpdir = "/"
url.rewrite-once = (
"^" + wpdir + "(wp-.+).*/?" => "$0",
"^" + wpdir + "(sitemap.xml)" => "$0",
"^" + wpdir + "(xmlrpc.php)" => "$0",
"^" + wpdir + "keyword/([A-Za-z_0-9-])/?$" => wpdir + "index.php?keyword=$1",
"^" + wpdir + "(.+)/?$" => wpdir + "index.php/$1"
)
}

Wessen lighty mit lua support kompiliert wurde, kann auch diese Lösung nutzen: http://sudhaker.com/web-development/wordpress/wordpress-permalinks-lighttpd.html

/etc/services

Als ich mir letztens die Ausgabe von

lsof -i

angesehen habe, ist mir folgendes aufgefallen. Mein thin webserver, der eine kleine Sinatra-Anwendung laufen lässt, erscheint dort mit einer komischen Portbezeichnung:

thin 5627 www-data 8u IPv4 511662859 TCP localhost.localdomain:webmin (LISTEN)

Ich wunderte mich warum dort "webmin" steht obwohl ich das doch garnicht installiert hatte. Nach einem Post auf der Thin-Mailingliste war ich schlauer. Da mein thin auf dem Port 10000 läuft und das standardmässig der Port von webmin ist, erscheint dort webmin. Nach kurzer Bearbeitung der Datei mittels

sudo nano /etc/services

sieht jetzt alles viel shöner aus :)

thin 5627 www-data 8u IPv4 511662859 TCP localhost.localdomain:thin (LISTEN)

Achtung: Ports unter 1024 nur bearbeiten, wenn du wirklich weißt, was du tust!

Terratec Cinergy Hybrid T USB XS unter Ubuntu 9.10 Karmic Koala

Wenn man den Cinergy Hybrid T USB XS unter Karmic anschließt und im DVB-T Programm seiner Wahl den Sendersuchlauf starten will, erhält man folgenden Fehler:

kernel: [  435.183409] usb 1-5: firmware: requesting xc3028-v27.fw
firmware.sh[4398]: Cannot find  firmware file 'xc3028-v27.fw'

Hier eine kleine Anleitung wie man dieses Problem löst. Sie funktioniert unter 32bit und 64bit Versionen von Karmic Koala. ((Quelle: http://forum.ubuntuusers.de/topic/cinergy-hybrid-t-usb-xs-linuxtauglich-1/49/#post-2129453))

wget http://media.ubuntuusers.de/forum/attachments/1862452/xc3028-v27-1.sh
chmod +x xc3028-v27-1.sh
sudo ./xc3028-v27-1.sh

Falls das wget nicht funktioniert kann man die Dateien auch zusammen hier herunterladen und entpacken.

Wenn du Kaffeine  benutzen möchtest und beim Klick auf einen Sender "Cannot find demultiplexer plugin for the given media data" als Fehler erscheint, dann musst du noch folgendes Paket installieren.

sudo apt-get install libxine1-ffmpeg

Noch ein kleiner Tipp: Unter ME TV ist Video Driver Auswahl sehr groß. Ich habe die besten Erfahrungen mit OpenGL (gute Qualität aber Interalcingfehler) oder xv (kein Interlacing aber etwas pixeliger) gemacht.

tilesAtHome mit Munin überwachen

Hier ist ein quick&dirty Script mit dem man tilesAtHome mit Munin überwachen kann. Einfach eine Datei in /usr/share/munin/plugins anlegen und im /etc/munin/plugins Ordner verlinken.

#!/bin/sh
#check if count file exists
if !(test -f /var/lib/munin/plugin-state/tahmu_count)
then
#if not create one
new=`grep -c "upload stop" /var/www/tilesAtHome/tah-process.txt`
echo $new > /var/lib/munin/plugin-state/tahmu_count
fi
new=`grep -c "upload stop" /var/www/tilesAtHome/tah-process.txt`
old=`cat /var/lib/munin/plugin-state/tahmu_count`

let count=$new-$old

case $1 in
   config)
        cat <<'EOM'
graph_category OpenStreetMap
graph_title Uploaded Tilesets
graph_vlabel number of uploaded tilesets
uploadedtilesets.label uploadedtilesets
EOM
        exit 0;;
esac
echo "uploadedtilesets.value $count"
echo $new > /var/lib/munin/plugin-state/tahmu_count

lighttpd + FastCGI vs. lighttpd + Mongrel

Bis jetzt lief eine Railsanwendung  (typo Blog) mit FastCGI und lighttpd. Diese zwei Prozesse haben extrem viel Arbeitsspeicher verbraucht (~150MB)  obwohl die Seite nur sehr wenig Traffic hat. Weiterhin stieg der genutze Arbeitsspeicher ständig an und wurde nicht wieder freigegeben.

Ich bin jetzt zu Lighttpd mit Proxy auf Mongrel (1 Prozess) gewechselt. Bis jetzt sieht es so aus, als wenn diese Variante viel performanter und weniger speicherhungrig ist, obwohl Mongrel bis jetzt genauso viel RAM verbraucht wie ein Ruby Prozess der FastCGI Lösung. Mal sehen wie sich das weiterentwickelt...

Einfach standardmässig einen Proxy erzeugen in der lighttpd.conf

  proxy.balance = "fair"
  proxy.server = ("/" =>
    (
      ( "host" => "127.0.0.1", "port" => 11000 )
    )
  )

In dein RailsRoot Verzeichnis wechseln und mit

mongrel_rails start -e production -d -p 11000 -a 127.0.0.1 --user www-data --group www-data

Mongrel starten. Die Befehle können natürlich nach Bedarf angepasst werden.