Эту заметку можно считать продолжением статьи по использованию Lighttpd во FreeBSD, здесь я опишу одну из нескольких возможностей по обработке php-скриптов.
Так как lighttpd не имеет своего модуля обработки php-скриптов, будем использовать fastcgi. Схема взаимодействия простая: lighttpd получает запрос, передаёт его процессу php-cgi, тот обрабатывает его и возвращает результат обратно.
Установка Lighhtpd особенностей не имеет, выполняем в соответствии с этой статьёй. Далее в конфигурационный файл lighttpd.conf добавляем следующее:
# ee /usr/local/etc/lighttpd/lighttpd.conf
fastcgi.server = ( ".php" => ( "localhost" =>
( "socket" => "/tmp/fcgi.socket",
"min-procs" => 1,
"max-procs" => 2,
"bin-path" => "/usr/local/bin/php-cgi",
)
)
)
Теперь немного пояснений: опция fastcgi.server указывает, куда отправлять fastcgi запросы. Конкретно указано, что по расширению ".php" запрос отправляется на сервер с именем "localhost" с помощью локального сокета. Секции "min-procs" и "max-procs" определяют минимальное и максимальное количество процессов php-cgi, которые и будут обрабатывать php-запросы. Как видим, здесь указан запуск всего двух процессов, для применения в реальных условиях это число должно корректироваться в соответствии с числом одновременно обрабатываемых сервером запросов, для собственных нужд (показ странички с какой либо статистикой или «web-морды» торрент-клиента) этого вполне достаточно.
Теперь после перезапуска lighttpd или перегрузки сервера по команде top увидим примерно следующее:
Для проверки создаём файл:
# ee /usr/local/www/data/index.php
<?
Phpinfo();
?>
При открытии этой странички увидим стандартный вывод функции phpinfo():