Page 1 of 1
suPHP, mod_php Problem?
Posted: 2005-07-18 09:30
by moppi
Hallo,
ich habe suPHP bei mir installiert in der Version 0.6.0. Nach der Anleitung von debianhowto hab ich auch die vHosts configuriert. Ich habe einen 2ten Server wo ich dies auch schon vor längerer Zeit schon einmal eingerichtet habe. Confixx mit der Option SuPHP Engine off funktioniert. Jedoch alle anderen vHosts werden die PHP Dateien als Download angeboten.
mit folgenden Optionen wurde suphp konfiguriert:
Code: Select all
./configure --with-apxs=`which apxs2` --with-pic --with-apache-user=apache --with-logfile=/var/log/apache2/suphp_log
die Logdatei wurde bisher nicht erstellt ich denke weil der Mechanismus einfach nicht funktioniert. Ich verwende Apache2 auf Gentoo Linux.
Bin für jeden Tip dankbar.
Viele Grüße
Daniel
Re: suPHP, mod_php Problem?
Posted: 2005-07-18 11:50
by Roger Wilco
Natürlich hast du mit SuPHP_AddHandler auch einen entsprechenden Handler für PHP-Dateien angelegt, nicht wahr?
Lies die README, es haben sich bei der Konfiguration von SuPHP in der Version 0.6 ein paar Sachen geändert. :roll:
Re: suPHP, mod_php Problem?
Posted: 2005-07-18 12:49
by moppi
ich habe natürlich das alles durchgelesen schließlich kann ich mich nicht auf die Kompetenz anderer verlassen. Ich habe eine suphp.conf angelegt unter etc basierend auf dem sample des sources.
Aber leider funktioniert das nicht wirklich.
Wo soll ich denn den SuPHP_AddHandler eintragen in den Vhost der Domain? Also in Confixx als httpd Spezial?
Re: suPHP, mod_php Problem?
Posted: 2005-07-18 12:58
by Roger Wilco
Moppi wrote:Wo soll ich denn den SuPHP_AddHandler eintragen in den Vhost der Domain? Also in Confixx als httpd Spezial?
Innerhalb eines beliebigen Directory- oder Location-Blocks. Direkt im VHost geht es nicht. Ausserdem solltest du in der suphp.conf das Loglevel höher setzen, falls noch nicht geschehen. Die Option
errors_to_browser ist auch recht nützlich. Ansonsten findest du die Fehlermeldungen im error.log bzw. suphp_log.
Du solltest auch darauf achten, dass der Handler wirklich identisch ist, also nicht nur
x-httpd-php, sondern
application/x-httpd-php.
Re: suPHP, mod_php Problem?
Posted: 2005-07-18 13:01
by moppi
Danke für Deine genauen Ausführungen, ich habe den Loglevel bereits höher gesetzt und auch gesagt das er die Fehler an den Browser senden soll. Leider passiert das alles nicht.
Hier ist mein Eintrag vor allen vHosts:
Code: Select all
suPHP_Engine on
suPHP_AddHandler application/x-httpd-php
php_admin_flag engine off
AddType application/x-httpd-php .php
AddHandler x-httpd-php .php
Aber ich habe immernoch die PHP Dateien zum Download :( auch kein Logfile und im Apache error_log steht auch nichts drin.
Edit: jetzt habe ich eine Meldung erhalten:
Unschlüssig bin ich trotzdem wo der Eintrag nun stehen muss.
Aber keine Logdatei kein Anhaltspunkt nichts. :(
Re: suPHP, mod_php Problem?
Posted: 2005-07-18 13:12
by Roger Wilco
Moppi wrote:Edit: jetzt habe ich eine Meldung erhalten:
Unschlüssig bin ich trotzdem wo der Eintrag nun stehen muss.
Aber keine Logdatei kein Anhaltspunkt nichts.
Die Meldung ist doch ein guter Anhaltspunkt. Sie besagt, dass die Direktive SuPHP_AddHandler in dem Abschnitt, in dem du sie stehen hast, nicht vorkommen darf.
Wie schon erwähnt, muss die Direktive innerhalb eines
Directory- oder
Location-Blocks sein, also z. B.
Code: Select all
<VirtualHost *>
# Blabla
[...]
SuPHP_Engine on
<Location />
SuPHP_AddHandler application/application/x-httpd-php
</Location>
# Mehr blabla
[...]
</VirtualHost>
Re: suPHP, mod_php Problem?
Posted: 2005-07-18 13:32
by moppi
so sieht jetzt mein vHost aus:
Code: Select all
<VirtualHost 217.160.132.172:80>
ServerName www.mx-solutions.de
DocumentRoot /home/www/web1/html
SuexecUserGroup web1 web1
<Location>
suPHP_Engine On
SuPHP_AddHandler application/x-httpd-php
</Location>
</VirtualHost>
und funktioniert leider nicht. Kein Log nix garnix keine Meldung. :(
EDIT: Ich habe jetzt alles was suPHP mal betrifft entfernt aus der apache2.conf und habe auch den Confixx krams mal auskommentiert. Jetzt führt er gar kein PHP mehr aus obwohl eingetragen ist:
Code: Select all
AddType application/x-httpd-php .php
AddHandler x-httpd-php .php
Re: suPHP, mod_php Problem?
Posted: 2005-07-18 13:54
by Roger Wilco
Moppi wrote:so sieht jetzt mein vHost aus
Der Location-Block ist falsch. Du gibst gar keine Location an. ;)
Mach das nächste mal lieber noch einen Syntax-Check deiner httpd.conf.
Re: suPHP, mod_php Problem?
Posted: 2005-07-18 13:57
by antondollmaier
@Moppi:
schau mal
hier
für suPHP auf default on reichen diese anweisungen:
Code: Select all
LoadModule suphp_module /usr/lib/apache/1.3/mod_suphp.so
suPHP_Engine on
AddHandler x-httpd-php .php[/quote]
bei mir ist zusätzlich noch mod_php geladen, das hab ich aber deaktiviert per default, und nur im confixx-vhost aktiviert...
du solltest außerdem aufpassen, dass deine php-version von cgi auch upgedatet wird, unter debian sarge reicht ein "apt-get install php4-cgi php4-cli" ... unter suse entsprechend über yast auswählen, oder, beim selber kompilieren, ohne "--with-apxs2" kompilieren ... dann wird die cgi-version gebacken ...
HTH
Re: suPHP, mod_php Problem?
Posted: 2005-07-18 14:04
by Roger Wilco
antondollmaier wrote:für suPHP auf default on reichen diese anweisungen
Bei Versionen <0.6 ja, ansonsten muss noch explizit ein Handler für SuPHP gesetzt werden (eben mit SuPHP_AddHandler).
Re: suPHP, mod_php Problem?
Posted: 2005-07-18 14:26
by moppi
ich hab jetzt die howot's allesamt durch und ich verstehe es nicht.
das mod_suphp ist eingebunden, der entsprechende vHost sieht so aus:
Code: Select all
<VirtualHost 217.160.132.172:80>
ServerName mx-solutions.de
ServerAlias www.mx-solutions.de web1.triceron.mx-solutions.de
DocumentRoot /home/www/web1/html
SuexecUserGroup web1 web1
<Location>
suPHP_Engine On
SuPHP_AddHandler application/x-httpd-php
</Location>
php_admin_value open_basedir /home/www/web1/html/:/home/www/web1/phptmp/:/home/www/web1/files/:/home/www/web1/atd/
php_admin_value file_uploads 1
php_admin_value upload_tmp_dir /home/www/web1/phptmp/
</VirtualHost>
aber es funktioniert nicht.
/etc/suphp.conf
Code: Select all
[global]
;Path to logfile
logfile=/var/log/suphp.log
;Loglevel
loglevel=info
;User Apache is running as
webserver_user=apache
;Path all scripts have to be in
docroot=/home/www
; 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
x-httpd-php=php:/usr/bin/php
;Handler for CGI-scripts
x-suphp-cgi=execute:!self
ich weiss nicht mehr weiter, der log wird ja auch nicht erstellt der evtl. Informationen enthalten könnte. im error_log des apache ist auch nichts verwertbares. Der einzige vHost der mit PHP korrekt läuft ist der vom Confixx, und das läuft über mod_php.
Re: suPHP, mod_php Problem?
Posted: 2005-07-18 14:54
by Joe User
Es fehlt die Angabe der betroffenen Location, beispielsweise:
Re: suPHP, mod_php Problem?
Posted: 2005-07-18 15:14
by moppi
ich hab es mal korrigiert:
Code: Select all
<VirtualHost 217.160.132.172:80>
ServerName mx-solutions.de
ServerAlias www.mx-solutions.de web1.triceron.mx-solutions.de
DocumentRoot /home/www/web1/html
SuexecUserGroup web1 web1
<Location />
suPHP_Engine On
SuPHP_AddHandler application/x-httpd-php
</Location>
php_admin_value open_basedir /home/www/web1/html/:/home/www/web1/phptmp/:/home/www/web1/files/:/home/www/web1/atd/
php_admin_value file_uploads 1
php_admin_value upload_tmp_dir /home/www/web1/phptmp/
</VirtualHost>
leider kein Effekt.
http://www.mx-solutions.de/phpinfo.php
Ich habe gar den Eindruck wenn dieser auch subjektiv ist das suPHP irgendwie nicht funktioniert auf anderer Ebene. Wie kann ich denn prüfen ob dieses Modul auch funktioniert bzw auch läuft oder gar geladen wird?
Re: suPHP, mod_php Problem?
Posted: 2005-07-18 17:47
by jeti-power
Hi,
Ich habe gar den Eindruck wenn dieser auch subjektiv ist das suPHP irgendwie nicht funktioniert auf anderer Ebene. Wie kann ich denn prüfen ob dieses Modul auch funktioniert bzw auch läuft oder gar geladen wird?
nun, das einfachste wäre in der suphp.conf das LogLevel auf info hochstellen und dann im SuPHP Logile nachschauen ob jeder Aufruf einer PHP-Seite protokolliert wird (inkl. UID usw.)
Gruss,
Jens
Re: suPHP, mod_php Problem?
Posted: 2005-07-18 18:31
by moppi
ich habe alle loglevel durchprobiert er erstellt nicht mal die logdatei...
Re: suPHP, mod_php Problem?
Posted: 2005-10-22 15:13
by compositiv
Die Config sieht schon ganz gut aus, das <Location>-Tag ist eigentlich nicht notwendig.
Neuere suPHP-Versionen haben allerdings einen kleinen "Bug", der verhindert das man suPHP_AddHandler überall eingesetzt werden kann, wo es vorgesehen ist.
Zum Beheben in src/apache2/mod_suphp.c im suPHP-Source die Zeile
Code: Select all
AP_INIT_ITERATE("suPHP_AddHandler", suphp_handle_cmd_add_handler, NULL, ACCESS_CONF, "Tells mod_suphp to handle these MIME-types"),
in
Code: Select all
AP_INIT_ITERATE("suPHP_AddHandler", suphp_handle_cmd_add_handler, NULL, RSRC_CONF | ACCESS_CONF, "Tells mod_suphp to handle these MIME-types"),
ändern, d.h. RSRC_CONF | hinzufügen und neu übersetzen.
Re: suPHP, mod_php Problem?
Posted: 2005-10-22 15:15
by Roger Wilco
Compositiv wrote:Neuere suPHP-Versionen haben allerdings einen kleinen "Bug", der verhindert das man suPHP_AddHandler überall eingesetzt werden kann, wo es vorgesehen ist.
It's not a bug, it's a feature. :roll: