Nette url’s

Voor mijn gallery pagina heb ik in het verleden al eens gestoeid om de url’s die aangeboden worden om te zetten in een query string die via php weer uitgelezen kan worden. In Apache is het zo dat dat met een eenvoudige rewrite rule kan, alleen wordt dan de originele url ook aangepast.

Nu ik bezig ben met het overstappen naar Lighttpd, ben ik aan het uitzoeken of (en vooral hoe) alles dat ik gebruik in Lighttpd geconfigureerd moet worden. Na een half uurtje puzzelen kwam ik tot het volgende:

$HTTP["host"] == "www.domein.nl" {
 magnet.attract-physical-path-to = ( "/etc/lighttpd/gallery.lua" )
}

En de gallery.lua bevat weer:

attr = lighty.stat(lighty.env["physical.path"])
if (not attr) then
   path = "/gallery.php"
   uri = string.sub(lighty.env["request.uri"],10)
   lighty.env["uri.query"] = "g=" .. uri
   lighty.env["uri.path"] = path
   lighty.env["request.uri"] = path .. "?" .. lighty.env["uri.query"]
   lighty.env["physical.rel-path"] = path
   lighty.env["physical.path"] = lighty.env["physical.doc-root"] .. path
end

En het leuke is nu, de originele url blijft in tact!