правило перезаписи lighttpd не работает - PullRequest
0 голосов
/ 10 ноября 2011

У меня только что возникли проблемы с обслуживанием статических файлов через Lighttpd.

Вот что я хотел бы сделать: www.example.ch - это мой домен.Если вызов приходит к www.example.ch/static/.....css, тогда я хочу перенаправить его и фактически обработать файл с static.example.ch/files/....css (см. Мое правило url.rewrite-Once).

Почему-то это просто не работает.Я что-то упустил полностью?

$HTTP["host"] =~ "(^|\.)example\.ch$" {
fastcgi.server = (
    "/django.fcgi" => (
        "main" => (
            "socket" => env.HOME + "/webqs/webqs.sock",
            "check-local" => "disable",
        )
    ),
)
alias.url = (
    "/media" => env.HOME + "/webqs/media",
)

url.rewrite-once = (
    "^(/media.*)$" => "$1",
    "^/favicon\.ico$" => "/media/favicon.ico",
    "^(/static.*)$" => "http://static.example.ch/files/$1",
    "^(/.*)$" => "/django.fcgi$1",
)
}

1 Ответ

0 голосов
/ 14 ноября 2011

Учитывая регулярное выражение "^(/static.*)$", похоже, что $1 будет содержать /static/...css. Есть ли каталог static/ в вашем каталоге files/? Если нет, попробуйте изменить регулярное выражение на что-то вроде:

"^/static/(.*)$"

Это должно соответствовать всем после /static/, но также не будет содержать строку /static/.

...