… weil Bananen keine Äpfel sind!

Lighttpd, WordPress und die Rewrites

Juni 28th, 2010 Friedemann

Aus aktuellem Anlass will ich hier einmal kurz festhalten, wie man Lighty dazu bringen kann, die vom Apache so heiß geliebten mod_rewrites zu nutzen.
Dadurch, dass Lighttpd nicht in der Lage ist, .htaccess-Dateien zu parsen (die Betonung liegt auf Light) müssen wir die Config des Lightys für die entsprechende Domain anpassen.
Hierzu habe ich die Datei „/etc/lighttpd/conf-enabled/10-simple-vhost.conf“ für die entsprechende Domain wie folgt abgeändert:

$HTTP["host"] == "bananasoft.org" {
        server.document-root = "/var/www/vhosts/bananasoft.org/htdocs/wordpress"
        server.errorlog = "/var/www/vhosts/bananasoft.org/logs/error.log"
        accesslog.filename = "/var/www/vhosts/bananasoft.org/access.log"
        # WordPress Permalinks
        url.rewrite-once = (
                "^/(wp-.+).*/?" => "$0",
                "^/images/.*/?" => "$0",
                "^/temp/.*/?" => "$0",
                # sollten noch weitere Verzeichnisse nicht von der Rewrite-Engine betroffen sein, müssen diese wie die URLs über dieser Zeile aussehen
                "^/(sitemap.xml)" => "$0",
                "^/(xmlrpc.php)" => "$0",
                "^/keyword/([A-Za-z_0-9\-]+)/?$" => "/index.php?keyword=$1",
                "^/.*?(\?.*)?$" => "/index.php$1"
        )
}

Anschließend die Lighty noch mit „/etc/init.d/lighttpd restart“ neu starten und alles sollte gut sein :-).

Sicherlich gibt es auch schönere Beispiele, wie zum Beispiel Christian Schmidt auf einer seiner Seiten zeigt.

Leave a Reply