Hallo!
Ich habe Probleme mit Virtual Hosts und SuExec bei Apache. SuExec klappt beim Zugriff auf ~NUTZER. Wenn ich ein Virtual Host anlege, funktioniert es nicht. Die Angaben User und Group sind vorhanden:
httpd.conf: #.... DocumentRoot /home/guettli/guettli.dyndns.org #....
<VirtualHost *> ServerAdmin webmaster@thomas-guettler.de DocumentRoot /home/guettli/guettli.dyndns.org User guettli Group guettli ServerName guettli.dyndns.org ErrorLog /var/log/apache/guettli.dyndns.org CustomLog /var/log/apache/guettli.dyndns.org common <Directory /home/guettli/guettli.dyndns.org> #Verwenden von .htaccess erlauben: AllowOverride All Options ExecCGI Indexes FollowSymLinks </Directory> </VirtualHost>
in suexec.log: [2002-09-10 01:02:51]: info: (target/actual) uid: (guettli/guettli) gid: (guettli/guettli) cmd: index.py [2002-09-10 01:02:51]: error: command not in docroot (/home/guettli/guettli.dyndns.org/quizpy/src/index.py)
Hat jemand eine Idee wie man das hinbekommen könnte?
Man könnte z.B. mit einem Rewrite der URL immer im Hintergrund auf ~NUTZER zugreifen ...
thomas
On Mon, Sep 09, 2002 at 11:24:44PM +0200, Thomas Guettler wrote:
Hallo!
Ich habe Probleme mit Virtual Hosts und SuExec bei Apache. SuExec klappt beim Zugriff auf ~NUTZER. Wenn ich ein Virtual Host anlege, funktioniert es nicht. Die Angaben User und Group sind vorhanden:
... OK, habe jetzt eine mögliche Fehlerquelle gefunden. SuExec wird während dem Kompilieren ein DocumentRoot zugewiesen. D.h. die Angaben in httpd.conf interessieren suExec nicht:
Burattino:~# /usr/lib/apache/suexec -V -D DOC_ROOT="/var/www" -D GID_MID=100 -D HTTPD_USER="www-data" -D LOG_EXEC="/var/log/apache/suexec.log" -D SAFE_PATH="/usr/local/bin:/usr/bin:/bin" -D UID_MID=100 -D USERDIR_SUFFIX="public_html"
Bin jetzt einen Schritt weiter.
Wie machen das eignetlich die Profis? Sind die virtuellen Domains Weiterleitungen zu Home-Verzeichnissen, oder stehen die virtuellen Domains unter docroot?
thomas
On Mon, Sep 09, 2002 at 11:24:44PM +0200, Thomas Guettler wrote:
Hallo!
Ich habe Probleme mit Virtual Hosts und SuExec bei Apache. SuExec klappt beim Zugriff auf ~NUTZER. Wenn ich ein Virtual Host anlege, funktioniert es nicht. Die Angaben User und Group sind vorhanden:
httpd.conf: #.... DocumentRoot /home/guettli/guettli.dyndns.org #....
<VirtualHost *> ServerAdmin webmaster@thomas-guettler.de DocumentRoot /home/guettli/guettli.dyndns.org User guettli Group guettli ServerName guettli.dyndns.org ErrorLog /var/log/apache/guettli.dyndns.org CustomLog /var/log/apache/guettli.dyndns.org common <Directory /home/guettli/guettli.dyndns.org> #Verwenden von .htaccess erlauben: AllowOverride All Options ExecCGI Indexes FollowSymLinks </Directory>
</VirtualHost>
in suexec.log: [2002-09-10 01:02:51]: info: (target/actual) uid: (guettli/guettli) gid: (guettli/guettli) cmd: index.py [2002-09-10 01:02:51]: error: command not in docroot (/home/guettli/guettli.dyndns.org/quizpy/src/index.py)
Sagt doch alles. Ich habe mal das suexec "gehackt" (den docroot-Test rausgenommen (und noch einen, glaube ich, weiß aber nicht mehr, welchen)):
ftp://schlittermann.de/pub/debian-private/suexec/
Ich weiß nicht, ob im originalen suexec inzwischen noch Bugfixes gemacht worden sind, dann könnte man das mal mit einfließen lassen.
Heiko
Thomas Guettler guettli@thomas-guettler.de schrieb:
Hallo!
Hallo zurück! Auf http://httpd.apache.org/doc/suexec.html steht, man möge alle virt. Hosts unter ein parent dir packen und selbiges bei der Konfiguration angeben (--suexxec-userdir=DIESES_DIR). Probiert hab ichs aber auch nicht.
Frank
On Tue, Sep 10, 2002 at 09:52:49AM +0200, Frank Sommer wrote:
Thomas Guettler guettli@thomas-guettler.de schrieb:
Hallo!
Hallo zurück! Auf http://httpd.apache.org/doc/suexec.html steht, man möge alle virt. Hosts unter ein parent dir packen und selbiges bei der Konfiguration angeben (--suexxec-userdir=DIESES_DIR). Probiert hab ichs aber auch nicht.
Ja, das habe ich auch gemacht. Alle virtual Domains waren in einem Verzeichnis. Dieses Verzeichnis hatte ich in http.conf als DocumentRoot angegeben. Doch suexec hat, wie du sagst, seine eigene Vorstellung, was docroot ist.
Folgender Befehl brachte dann die "Erleuchtung":
==root@sonne:~# /usr/lib/apache/suexec -V -D DOC_ROOT="/var/www" -D GID_MID=100 -D HTTPD_USER="www-data" -D LOG_EXEC="/var/log/apache/suexec.log" -D SAFE_PATH="/usr/local/bin:/usr/bin:/bin" -D UID_MID=100 -D USERDIR_SUFFIX="public_html"
Nachdem ich alles entsprechend dem docroot von suexec angeordnet habe läuft es.
Danke für's mitknobeln!
Thomas
lug-dd@mailman.schlittermann.de