Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witam,
Mam na serwerze zainstalowanego apacha2 + php4 jako moduł, i zachciało mi się odpalić php5 jako cgi, który będzie parsował pliki z rozszerzeniem php5 na jednej z domen, jednak napotkałem na problem: otóż przy próbie otwarcia strony domena.pl/test.php5 nie dzieje się absolutnie nic - tzn. pusta strona, apache nie wysyła do przeglądarki nawet żadnych nagłówków, żadnych błędów. Php4 + apache działa znakomicie.
Paczki, które mam zainstalowane dla apacha:
apache2-doc apache2-mpm-prefork apache2-utils apache2.2-common libapache2-mod-perl2 libapache2-mod-php4
Dla php:
php-db php-http php-mail php-net-smtp php-net-socket php-pear php-xml-parser php4 php4-cli php4-common php4-curl php4-domxml php4-gd php4-imap php4-mcal php4-mhash php4-mysql php4-pear php5 php5-cgi php5-cli php5-common php5-mysql
Konfiguracja dla apacha wygląda następująco:
<Directory "/var/www/domena/html">
Options +FollowSymLinks -SymLinksIfOwnerMatch
Options +ExecCGI +Indexes
AddHandler cgi-script .cgi .pl
AddHandler php5-cgi .php5
DirectoryIndex index.html index.htm index.php index.php3 index.php4 index.php5 index.cgi index.pl
<IfModule mod_access.c>
Allow from all
</IfModule>
php_admin_flag engine on
<Files ~ ".shtml$">
deny from all
</Files>
<Files ~ ".(wml.*|wbmp)$">
deny from all
</Files>
</Directory>
<VirtualHost ip_hosta:80>
ServerName domena.pl
ServerAlias www.domena.pl
DocumentRoot /var/www/domena/html
SuexecUserGroup domena domena
ScriptAlias /cgi-bin/ /var/www/domena/html/cgi-bin/
ScriptAlias /php5-cgi /usr/lib/cgi-bin/php5
Action php5-cgi /php5-cgi
php_admin_value open_basedir /var/www/domena/html/:/var/www/domena/phptmp/:/var/www/domena/files/:/var/www/domena/atd/
php_admin_value file_uploads 1
php_admin_value upload_tmp_dir /var/www/domena/phptmp/
</VirtualHost>
Dodam, że wykonując polecenie w konsoli:
$ php5 test.php
plik parsuje się.
Jeśli ktoś ma jakieś pomysły co jest nie tak, będę wdzięczny za każdą wskazówkę.
Pozdrawiam
Offline
Obsługa PHP5 jako CGI powinna wyglądać następująco:
AddType application/x-httpd-php5 .php5 ScriptAlias /php/ "/usr/local/php5/bin/" Action application/x-httpd-php5 "/php/php"
Gdzie "/usr/local/php5/bin" to ścieżka do folderu z binariami php5, a "/php/php" to wyżej utworzony alias i nazwa programu. Zauważ, że php5 jako CGI będzie działać wolniej.
Offline
Sprawa rozwiązana, chodziło o
SuexecUserGroup domena domena
użytkownik domena nie miał prawa do wykonywania /usr/lib/cgi-bin/php5
Apache Module mod_suexec
The SuexecUserGroup directive allows you to specify a user and group for CGI programs to run as. Non-CGI requests are still processes with the user specified in the User directive. This directive replaces the Apache 1.3 configuration of using the User and Group directives inside of VirtualHosts.
Offline