Hi,
Ich habe nun einmal das hier versucht:
http://www.bwurst.org/archives/45-PHP-m ... entoo.html
Hab das soweit auch verstanden und auch nachvollziehen können, nur funktioniert das leider nicht auf meinem Server.
Mein Vhost sieht nun so aus:
Code: Select all
<VirtualHost 82.165.xxx.xx:80>
ServerName mydomain.de
ServerAlias www.test.mydomain.de test.mydomain.de
DocumentRoot /home/htdocs/web1/test/
SuexecUserGroup web1 ftponly
Options +ExecCGI
php_admin_value upload_tmp_dir /home/htdocs/web1/phptmp/
php_admin_flag engine on
ScriptAlias /cgi-bin/ /home/htdocs/web1/test/cgi-bin/
RemoveHandler .php
AddType application/php php
Action application/php /cgi-bin/php
</VirtualHost>
Desweiteren habe ich die index.php bei mir ausführbar gemacht mit chmod 755.
Rufe ich die datei auf, bekomme ich nur:
Die Anfrage kann nicht beantwortet werden, da im Server ein interner Fehler aufgetreten ist. Fehlermeldung:
Die Anfrage kann nicht beantwortet werden, da im Server ein interner Fehler aufgetreten ist. Der Server ist entweder überlastet oder ein Fehler in einem CGI-Skript ist aufgetreten.
die suexec.log sagt folgendes:
[2005-06-26 11:15:34]: uid: (636/web1) gid: (102/102) cmd: index.php
[2005-06-26 11:15:34]: command not in docroot (/home/htdocs/web1/test/cgi-bin/index.php)
Code: Select all
/usr/sbin/suexec2 -V
-D AP_DOC_ROOT="/srv/www"
-D AP_GID_MIN=96
-D AP_HTTPD_USER="wwwrun"
-D AP_LOG_EXEC="/var/log/apache2/suexec.log"
-D AP_SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
-D AP_UID_MIN=96
-D AP_USERDIR_SUFFIX="public_html"
Es wird zwar schon mit den richtigen Rechten ausgeführt, aber der docroot ist falsch, weil Apache ursprünglich für das verzeichnis /srv/www vorgesehn war, aber ich es nach /home verlegt habe sagt suexec mir, das es ein falsches docroot ist :( Kann man das irgendwie umgehen ohne mir ein eignen Apache zu kompelieren, weil hab alles immer per RPM installiert und auf komplett neu machen habe ich nicht so die lust.
So dann habe ich dort ein text gelesen:
Als erstes muss SuExec natürlich laufen. Das war bei uns schon vorher der Fall, trotzdem nochmal kurz zusammenfassend: SuExec braucht zur Kompilierzeit bereits die Angabe des Document-Root, also das Verzeichnis in dem alle Scripts drin sind. Gentoo stellt dieses auf /var/www ein, da wir /home haben wollen, mussten wir das ebuild patchen. jedenfalls steht da jetzt --with-suexec-docroot=/home.
was meinen die damit mit ebuild? Habe danach gegoogelt, aber da bekam ich keine richtigen antworten. Kann mir einer sagen, was ich da noch machen kann, ohne das ich Apache2 selber kompelieren muss?