NOTE: url rewriting does not work within a $HTTP["url"] conditional.
Além disso, as reescritas devem sempre usar o caminho absoluto, portanto, você deve prefixar suas correspondências com / admin e targets e a correspondência fastcgi.server também.
Estou tentando configurar o lighttpd para que:
Então, basicamente, domain1 e domain2 devem usar a mesma configuração, exceto quando domain1 é acessado por meio de uma URL que começa com / admin
Eu tentei até agora várias variações, incluindo esta:
$HTTP["host"] =~ "domain1.org" {
$HTTP["url"] =~ "^/admin" {
// config1
alias.url = ("/media/admin" => "/usr/share...",
"/static" => "/var/www/...")
url.rewrite-once = (
"^(/media/admin.*)$" => "$1",
"^(/static.*)$" => "$1",
"^/favicon\.ico$" => "/media/favicon.ico",
"^(/.*)$" => "/application.fcgi$1",
)
server.document-root="/var/www/application"
fastcgi.debug = 1
fastcgi.server = (
"/application.fcgi" => (
"main" => (
"socket" => "/var/www/application/application.sock",
"check-local" => "disable",
)
),
)
} else $HTTP["url"] !~ "^/admin" {
// config2
}
$HTTP["host"] !~ "domain1.org" {
// config2
}
Mas não importa o que aconteça, acessar domain1.org/admin produz um 404.
Existe alguma coisa que esteja faltando?
Tags lighttpd