Actions
Howto PHP¶
Lighttpd config¶
setup { module_load ( "mod_fastcgi" ); } php = { if phys.path =$ ".php" { if physical.is_file { fastcgi "unix:/var/run/lighttpd/sockets/www-default-php.sock"; } } }; # ... some vhost/directory/whatever # just use it in places where you want allow php. # you need docroot before it (an alias / index if you need them)! docroot "/var/www"; alias "/phpmyadmin" => "/usr/share/phpmyadmin"; index ( "index.php", "index.html" ); # if you want to use urls like http://example.com/index.php/some/path (using your php files like directories), you need this: pathinfo; php; # ...
Spawning php¶
Simple ./run script to spawn php with spawn-fcgi and runit/daemontools:
#!/bin/sh exec 2>&1 PHP_FCGI_CHILDREN=2 \ PHP_FCGI_MAX_REQUESTS=10000 \ LANG=C LC_ALL=C \ exec /usr/bin/spawn-fcgi -n -s /var/run/lighttpd/sockets/www-default-php.sock -u www-default -U www-data -- /usr/bin/php5-cgi
php-fpm¶
This directs physical files with extension .php and the special url "/fpm-status" to php.
-- php-fpm.lua local function phpfpm(act) return action.when(physical.path:suffix(".php"), action.when(physical.is_file:is(), act), action.when(request.path:eq("/fpm-status"), act) ) end actions = { ["phpfpm"] = phpfpm, }
setup { module_load ( "mod_fastcgi", "mod_lua" ); lua.plugin "/etc/lighttpd2/php-fpm.lua"; } php = { phpfpm { fastcgi "unix:/var/run/lighttpd2-php-www-default.sock"; }; };
Or, without the lua helper (which is only run at startup, no runtime lua involved):
setup { module_load ( "mod_fastcgi" ); } php = { if phys.path =$ ".php" { if physical.is_file { fastcgi "unix:/var/run/lighttpd/sockets/www-default-php.sock"; } } else if request.path == "/fpm-status" { fastcgi "unix:/var/run/lighttpd2-php-www-default.sock"; } };
Updated by stbuehler about 12 years ago · 7 revisions