Назад | Перейти на главную страницу

Файл конфигурации lighttpd не может анализировать условные конфигурации $ HTTP [«url»], хотя другие работают

Я пытаюсь установить mimetypes для файлов по определенному пути на моем сервере, на котором работает lighttpd версии 1.4.31 с SSL.

Я следую этой документации конфигурации: http://redmine.lighttpd.net/projects/1/wiki/docs_configuration

Указание $PHYSICAL["path"] не представлен до версии lighttpd 1.5.0, поэтому я пытаюсь указать $HTTP["url"].

Я пробовал оба

$HTTP["url"] == '/my_path/directory_to_affect/foo.html' {
     # my settings are in here  
}

и

$HTTP["url"] =~ '/my_path/directory_to_affect/*' {
     # my settings are in here  
}

Если я протестирую свой файл конфигурации с помощью lighttpd -D -f lighttpd.conf или попробуйте перезапустить lighttpd, я получаю такую ​​ошибку:

2015-04-29 14:37:52: (configfile.c.892) source: /etc/lighttpd/lighttpd.conf line: 48 pos: 12 invalid character in variable name 
2015-04-29 14:37:52: (configfile.c.948) configfile parser failed at: ==

Или та же ошибка, но говорю =~ вместо того ==.

Меня смущает то, что уже есть другие условные конфигурации, например где $SERVER["socket"] == ":80", и эти конфигурации работают нормально.

Согласно lighttpd docs по синтаксису файла конфигурации, только двойные кавычки "не ' поддерживаются.

Ваше наблюдение, что $SERVER["socket"] == ":80" работает, но $HTTP["url"] == '/my_path/' нет, подтверждает это.