Falls es wen interessiert:
Wenn man virtuelle Hosts einsetzt und gerne bei einer Domain alles was nicht
http://www.example.org/x.example.org/y.example.org lautet auf
http://www.example.org umleiten möchte, empfiehlt sich folgender Syntax. Das Beispiel von LightTPD ist verkehrt herum, wenn man mehr als eine Domain hat!
Code: Select all
$HTTP["host"] =~ "^(([^.]+).)?example.org$" {
$HTTP["host"] !~ "^(www|x|y).example.org$" {
url.redirect = (
"^/(.*)" => "http://www.example.org/$1"
)
}
}
Zur Erläuterung:
Auf den regulären Ausdruck "^(([^.]+).)?example.org$" passt example.org sowie xyz.example.org (wobei xyz beliebig ist). Dies ist wichtig, damit andere VHosts bzw. Domains nicht durch die Folge-Regel geprüft werden.
Der nächste reguläre Ausdruck "^(www|x|y).example.org$" überprüft, ob vor dem eigentlichen Domainnamen ein Subdomain namens www/x/y steht. Da dies gültige Subdomains sind, bricht die Überprüfung dort ab, ansonsten wird man auf
http://www.example.org weitergeleitet und der Query-String nach dem Slash wird gleichzeitig mit übergeben.
Informationen dazu gibt es hier:
:arrow:
http://trac.lighttpd.net/trac/wiki/Docs%3AModRedirect
Zum testen von regulären Ausdrücken kann ich euch den RegEx-Coach empfehlen:
:arrow:
http://www.weitz.de/regex-coach/
Gruß
dtdesign