Я использую lighttpd / 1.4.28 (ssl) в Ubuntu 12.04 LTS. Все работает, и я пытаюсь настроить производительность. Я хотел бы включить режим отладки для модуля fastcgi, однако, когда я добавляю директиву fastcgi.debug к моему файлу conf, lighttpd задыхается с ошибкой "parser failed":
2013-10-08 10:56:23: (configfile.c.912)
source: /etc/lighttpd/conf-enabled/15-fastcgi-php.conf
line: 1
pos: 15 parser failed somehow near here: (EOL)
Файл конфигурации: /etc/lighttpd/conf-enabled/15-fastcgi-php.conf
fastcgi.debug=1
fastcgi.server += ( ".php" =>
((
"bin-path" => "/usr/bin/php-cgi",
"socket" => "/tmp/php.socket",
"max-procs" => 1, # runs max-procs bin-path controllers plus (max-procs * PHP_FCGI_CHILDREN) workers
"idle-timeout" => 20,
"bin-environment" => (
"PHP_FCGI_CHILDREN" => "10",
# PHP_FCGI_MAX_REQUESTS: The number of requests that a single worker handles before it kills itself.
"PHP_FCGI_MAX_REQUESTS" => "10000"
),
"bin-copy-environment" => (
"PATH", "SHELL", "USER"
),
"broken-scriptfilename" => "enable",
"check-local" => "disable"
))
)
Почему директива не распознается? Я получаю сообщение об ошибке, даже если установлю нулевое значение.
Я потратил на это последний час и, наконец, наткнулся на эту тему: http://redmine.lighttpd.net/boards/2/topics/2265
В самом конце потока OP упоминает интерактивный запуск lighttpd из консоли:
sudo lighttpd -Df /etc/lighttpd/lighttpd.conf
Когда я это сделал, он распечатал сообщение:
Duplicate config variable in conditional 0 global: fastcgi.debug
Итак, я нашел все свои конфиги и, конечно же, нашел еще один файл с директивой fastcgi.debug. Когда я удалил запись dup, запустился lighttpd.
lighttpd должен записать это сообщение в журнал ошибок!