Я пробовал включить mod_fastcgi
на моем сервере lighttpd (работающем на Ubuntu) со следующей конфигурацией (прямо из примера в conf-available
):
fastcgi.server = ( ".php" =>
((
"bin-path" => "/usr/bin/php-cgi",
"socket" => "/tmp/php.socket",
"max-procs" => 2,
"idle-timeout" => 20,
"bin-environment" => (
"PHP_FCGI_CHILDREN" => "4",
"PHP_FCGI_MAX_REQUESTS" => "10000"
),
"bin-copy-environment" => (
"PATH", "SHELL", "USER"
),
"broken-scriptfilename" => "enable"
))
)
... но теперь lighttpd не запускается со следующим в журналах:
2010-09-06 17:13:39: (log.c.166) server started
2010-09-06 17:13:39: (mod_fastcgi.c.1104) the fastcgi-backend /usr/bin/php-cgi failed to start:
2010-09-06 17:13:39: (mod_fastcgi.c.1108) child exited with status 2 /usr/bin/php-cgi
2010-09-06 17:13:39: (mod_fastcgi.c.1111) If you're trying to run your app as a FastCGI backend, make sure you're using the FastCGI-enabled version. If this is PHP on Gentoo, add 'fastcgi' to the USE flags.
2010-09-06 17:13:39: (mod_fastcgi.c.1399) [ERROR]: spawning fcgi failed.
2010-09-06 17:13:39: (server.c.931) Configuration of plugins failed. Going down.
Как я могу определить, что идет не так, и исправить это?
Я посмотрю, смогу ли я помочь, но имейте в виду, что у меня нет легкой настройки, поэтому я не могу сравнивать 1-к-1.
Думаю, вы должны увидеть, как настроен ваш php-cgi и что он поддерживает. Итак ... может начать с чего-нибудь вроде ...
$ which php-cgi
/usr/bin/php-cgi
$ /usr/bin/php-cgi -m
[PHP Modules]
bcmath
bz2
calendar
cgi-fcgi
...
Тогда возможно:
$ /usr/bin/php-cgi -i > phpcgi.html
Затем откройте phpcgi.html в браузере. Я подозреваю, что и в phpcgi.html, и в phpcgi -m должны быть строки с упоминанием "cgi-fcgi" или Серверный API CGI / FastCGI, и т.д.
Если оба из них выглядят хорошо (т.е. похоже, что он настроен для поддержки CGI), я бы начал выбирать с легкой настройки и файлов /etc/php5/cgi/*.ini.
В настоящее время я использую установку Nginx / spawn-fcgi / PHP5, которая работает очень хорошо.
Какой Ubuntu вы используете (cat / etc / issue), какой архитектуры (uname -a) и какие пакеты lighttpd / php / fastcgi (dpkg --list | egrep "lighttpd | fastcgi | php")?