Webservers other than apache (1) and php (2)

Elan Ruusamäe glen at delfi.ee
Sun Nov 20 16:23:20 CET 2005


On Saturday 19 November 2005 18:46, Michał Łukaszek wrote:
> Hi,
>
> I'm currently using lighttpd. Is there any reason, why this creates a
> lighttpd group instead of http (like apache)? Currently, to get things
> working you must either add lighttpd user to the http group (if it exists)
> or chown everything that wants to be owned by http group to lighttpd.
i'm not sure why lighttpd has it's own uid/gid, but it could have been done 
because, thttpd runs in separate uid (thttpd), and that lighttpd itself 
doesn't run php, so you could have security by having webserver running 
different uid than php-fcgi, which runs under http uid.

> The other thing - lighttpd uses php-fcgi. Why does't this package provide
> 'php'? Currently, to install e.g. phpPgAdmin (which requires php) one must
> use --nodeps. Can't apache[1]-mod_php[4], php-fcgi, php-cli, php-cgi,
> php-program or anything we have there to interpret php code provide 'php'?
for the php-fcgi, i guess having Provide: php is okay, but i'm not sure 
php-cgi should provide one, as cgi is not webserver, ie the uid/gid is 
inherited from webserver process, which could even be random uid from suexec 

as lighttpd 1.4 has include and include_exec config directives, we could start 
packaging lighttpd config fragments in packages too.

include_exec "cat conf.d/*.conf"
this could load any config that packages put to /etc/lighttpd/conf.d 
directory.

as for merging config, i think 
alias.url += (
    "/application" => "/usr/share/application",
)
could work

i think need to gather the ideas people have, analyze (summary) them, and 
start implementing.

as for the php virtual provides, right now there are
Provides: php
which means php apache module (apache1-mod_php4, apache1-mod_php, 
apache-mod_php4, apache-mod_php)
i think it's ok to add php-fcgi to the list, but please also note that there's 
php-fcgi-init which starts php-fcgi daemon using lighttpd spawn-fcgi program. 
maybe that should be instead the program which Provides: php, but in lighttpd 
case you could also let lighttpd spawn the php-fcgi processes.

Provides: php-common
just php scripting engine, no particular SAPI (php4-common, php-common)

Provides: php(program)
this is for providing /usr/bin/php symlink to php4 or php5 cli sapi.


-- 
glen



More information about the pld-devel-en mailing list