php cgiwrap .. solved
Jozef Hitzinger
hitzinger@phobos.fphil.uniba.sk
Thu, 29 Mar 2001 14:14:59 +0200 (CEST)
On Thu, 29 Mar 2001, Vladimir Michl wrote:
> > pokusam sa rozbehat php skripty tak, aby som mohol chodit do databazy nie
> > ako www-data, ale ako user todo. Aj po niekolkych dnoch hladania faq/howto
> > mam z toho trochu chaos, neviete prosim o nejakom exampli?
>
> Pokud vim, tak cgi-wrap neni treba vubec instalovat, staci pouze php-cgi.
>
> Php scripty se pak spousti normalne z prikazove radky
> $ php php_script.php
Aha, asi som to napisal nejasne. Nechcem phpcka spustat z commandline, ale
cez web. Ked ich interpretuje php modul v apache, bezi to pod userom
www-data, co nie je najstastnejsie pre pristup do databazy.
Uz som to vlastne vyriesil. Chcel som hodit postup na web a poslat link
ale nebol cas .. No, napisem to teraz, mozno to niekomu pomoze.
Takze: nainstalovat php-cgi, php-cgi-pgsql a cgiwrap, pridat do
httpd.conf direktivu
<Directory /home/todo/public_html/cgi-bin>
AddHandler application/x-httpd-phpcgi .pcgi
Action application/x-httpd-phpcgi /cgi-bin/cgiwrap/todo/phpcgi.cgi
</Directory>
do ~todo/public_html/cgi-bin dat phpcgi.cgi ktory vyzera takto
#!/bin/sh
PHPCGI_SCRIPT=`echo $PATH_INFO | sed -e s/.*\\\\///`
export PATH_TRANSLATED=$PWD/$PHPCGI_SCRIPT
/usr/lib/cgi-bin/php3
potom samotny php skript ~todo/public_html/cgi-bin/todo.pcgi (napisany v
php3) nemusi mat na zaciatku ziadne #! a cele to funguje, ten skript sa
vyvola cez
http://server/~todo/cgi-bin/todo.pcgi
a pri pristupe k databaze skutocne bezi pod userom 'todo', takze sa da
pouzit SQL grant.
Je to trochu neohrabane, lebo pre kazdeho usera co by toto chcel pouzivat
treba definovat zvlast apache direktivu (no, moze ju mat v .htaccess vo
svojom cgi-bin adresari), a musi si tiez nakopirovat do cgi-bin ten kratky
phpcgi.cgi
Ale zasa je to bez zasahov do std debian balickov a bez kompilovania, a to
v mojom pripade rozhodlo.
Co sa tyka bezpecnosti, phpcgi.cgi aj todo.pcgi maju prava 700 todo.nogroup
a malo by to byt ok. Ak tam tusite nejaku zradu, rad sa necham poucit.
--
jozef :-)