NINJA
Haláli hullák
RSS-HUB MOBIL HÍROLVASÓ
RSS-HUB WINDOWS MOBILE
SERIOUS SAM JÁTÉKOK
Egyszerre animál pornó és pedofil szex! :D

A PHP CGI módban való hasznmálatára a fastcgi, és az fcgid modulon kívül a suPHP-val van még lehetőségünk.
Mint előzőekben most is következő környezetben dolgozunk: debian5, apache2 és php5.
Ezt is egy példán keresztül szeretném bemutatni.
srv10.ath.cx lesz a fihktív virtual hostunk, aminek a tartalmát a /var/www/virtual/SRV10/htdocs elérési útvonalon tároljuk.
Betöltöm a suphp modot a2enmod suphp
LoadModule suphp_module /usr/lib/apache2/modules/mod_suphp.so
Felhasználónk, akinek a nevében futa a php-cgi: SRV10.ATH
A html fájlokat www-data felhasználó futtatja (Az apach felhasználó)
Rendszergazda felhasználó : root
A következő mappa szerkezetünk van
/var/www/ => Tulajdonos: root csoport: root
… /virtual/ => Tulajdonos: root csoport: root
… … /SRV10/ => Tulajdonos: SRV10.ATH csoport: www-data
… … … /cgi-bin => Tulajdonos: SRV10.ATH csoport: SRV10.ATH
… … … /errors => Tulajdonos: SRV10.ATH csoport: SRV10.ATH
… … … /fcgi => Tulajdonos: SRV10.ATH csoport: SRV10.ATH
… … … /htdocs => Tulajdonos: SRV10.ATH csoport: www-data
… … … /phptmp => Tulajdonos: SRV10.ATH csoport: www-data
… … … /session => Tulajdonos: SRV10.ATH csoport: www-data (CHMOD : 1733)
/var/www/virtual/SRV10/fcgi mappában lesz a php ini php-SRV10.ini néven (CHMOD 644)
Itt mindent beállíthatunk: memória limit, open_basedir, stb …
Beállíthuk a virtual hostot (Erre akár egy külön fájlt is beállíthatunk)
————————————————————————————————————-
ServerAdmin webmaster@SRV10
DocumentRoot /var/www/virtual/SRV10/htdocs
ServerName srv10.ath.cx
#Alias /errors /var/www/virtual/SRV10/errors/
#ErrorDocument 401 /errors/401.html
#ErrorDocument 403 /errors/403.html
#ErrorDocument 404 /errors/404.html
#ErrorDocument 500 /errors/500.html
#ErrorDocument 503 /errors/503.html
<IfModule suexec_module>
SuexecUserGroup SRV10.ATH SRV10.ATH
</IfModule>
ScriptAlias /cgi-bin/ /var/www/virtual/SRV10/cgi-bin/
<Directory /var/www/virtual/SRV10/cgi-bin>
AllowOverride AuthConfig
#Options ExecCGI
Order allow,deny
Allow from all
</Directory>
<Directory /var/www/virtual/SRV10/htdocs>
Options -Indexes Includes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
#Így töltöm be az egyedi php ini-t minden felhasználónak egyedi php lehetőségeket adva
<IfModule mod_suphp.c>
suPHP_ConfigPath /var/www/virtual/SRV10/fcgi/php-SRV10.ini
</IfModule>
———————————————————————————————————
Az apache /etc/apache2/mods-enabled/suphp.conf fájlt az alábbi módon állítotttam be!
——————————————————————————————————————————
<IfModule mod_suphp.c>
AddType application/x-httpd-suphp .php .php3 .php4 .php5 .phtml
suPHP_AddHandler application/x-httpd-suphp
<Directory />
suPHP_Engine on
</Directory>
# By default, disable suPHP for debian packaged web applications as files
# are owned by root and cannot be executed by suPHP because of min_uid.
<Directory /usr/share>
suPHP_Engine off
</Directory>
# # Use a specific php config file (a dir which contains a php.ini file)
# suPHP_ConfigPath /etc/php4/cgi/suphp/
# # Tells mod_suphp NOT to handle requests with the type <mime-type>.
# suPHP_RemoveHandler <mime-type>
</IfModule>
———————————————————————————————————————————
A suphp-hez használunk még egy globális beállítás fájlt is amit a suphp telepítő alapértelmezetten az /etc/suphp könyvtárba tesz,
aminek a tartalát az alábbi módon állítom be:
——————————————————————————-
[global]
;Path to logfile
logfile=/var/log/apache2/suphp.log
;Loglevel
loglevel=info
;User Apache is running as
webserver_user=www-data
;Path all scripts have to be in
docroot=/var/www/virtual
;Path to chroot() to before executing script
;chroot=/var/www/virtual/*
; Security options
allow_file_group_writeable=false
allow_file_others_writeable=false
allow_directory_group_writeable=false
allow_directory_others_writeable=false
;Check wheter script is within DOCUMENT_ROOT
check_vhost_docroot=true
;Send minor error messages to browser
errors_to_browser=true
;PATH environment variable
env_path=/bin:/usr/bin
;Umask to set, specify in octal notation
umask=0077
; Minimum UID
min_uid=100
; Minimum GID
min_gid=100
[handlers]
;Handler for php-scripts
application/x-httpd-suphp=”php:/usr/bin/php-cgi”
;Handler for CGI-scripts
x-suphp-cgi=”execute:!self”
——————————————————————————————-
Ha mindent jól csináltunk, akkor újra indítom az apache-ot.
<?php phpinfo(); ?> fájlal ellenőrzöm a működést: