2012-11-13 16 views
6

Ich habe eine Lighttpd-Setup auf den Document-Root /var/www zeigen. Ich möchte jedoch die URL other/ auf /some/other/dir zeigen. Das mache ich mit der folgenden Konfiguration:Lighttpd: Lassen Teilpfad zu anderen Dokumentenstamm

$HTTP["url"] =~ "^/other($|/)" { 
    server.document-root = "/some/other/dir" 
} 

Allerdings, wenn ich 'http: // myhost/other' zugreifen, lighttpd versucht /some/other/dir/other zuzugreifen, statt nur /some/other/dir. Ist es möglich, die /other irgendwie zu entfernen, aber behalten Sie weitere URL-Segmente? So sollte zum Beispiel http://myhost/other/sub/foo.txt auf /some/other/dir/sub/foo.txt zeigen.

Antwort

6

Anstatt zu versuchen, server.document-root zu setzen, können Sie mod_alias verwenden, um dies zu erreichen:

server.modules = (..., "mod_alias") 

... 

alias.url = ("/other/" => "/some/other/dir/") 

Dies wird einen Alias, so dass alle Anforderungen an /other/ und Ressourcen in diesem Ordner zu /some/other/dir/ auf der Datei umgeleitet werden erstellen System, mit einer Anfrage direkt an /other/ direkt auf die Wurzel von /some/other/dir/ verwiesen wird, genau wie Sie wollen.