suexec Problem

From: Sven Müller <sven(at)hitnet.rwth-aachen.de>
Date: Sun, 3 Jul 2005 13:43:23 +0100

Hallo zusammen!

Ich habe hier zwar ein nicht ganz FreeBSD spezifisches Problem, aber ich
hoffe ihr könnt mir dennoch helfen.

Aus den Ports habe ich den apache13-modssl mit suexec installiert.

Eigentlich dachte ich, wenn ich folgende Config im Vhost verwende, dann
würden die entsprechenden Scripte unter dem in der Config angegeben User
ausgeführt.
Leider ist dem aber nicht so :-(

Hab ich das ganze nun falsch verstanden, oder muss ich dem Apache
anderen Parameter als in der default-config mitgeben?

Für eure Hilfen wäre ich sehr dankbar.

Hier noch ein Paar Infos zu meiner Konfiguration:

su-2.05b# httpd -V
Server version: Apache/1.3.33 (Unix)
Server built: Apr 17 2005 16:35:35
Server's Module Magic Number: 19990320:16
Server compiled with....
 -D EAPI
 -D EAPI_MM
 -D EAPI_MM_CORE_PATH="/var/run/httpd.mm"
 -D HAVE_MMAP
 -D USE_MMAP_SCOREBOARD
 -D USE_MMAP_FILES
 -D HAVE_FLOCK_SERIALIZED_ACCEPT
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D DYNAMIC_MODULE_LIMIT=64
 -D HARD_SERVER_LIMIT=512
 -D SO_ACCEPTFILTER
 -D ACCEPT_FILTER_NAME="httpready"
 -D HTTPD_ROOT="/usr/local"
 -D SUEXEC_BIN="/usr/local/sbin/suexec"
 -D DEFAULT_PIDLOG="/var/run/httpd.pid"
 -D DEFAULT_SCOREBOARD="/var/run/httpd.scoreboard"
 -D DEFAULT_LOCKFILE="/var/run/httpd.lock"
 -D DEFAULT_ERRORLOG="/var/log/httpd-error.log"
 -D TYPES_CONFIG_FILE="etc/apache/mime.types"
 -D SERVER_CONFIG_FILE="etc/apache/httpd.conf"
 -D ACCESS_CONFIG_FILE="etc/apache/access.conf"
 -D RESOURCE_CONFIG_FILE="etc/apache/srm.conf"

Nun möchte ich meine Perl Scripte im VHost ausführen dafür habe ich
folgende Konfiguration gewählt:

<VirtualHost xxx.xxx.xxx.xxx:80>
  ServerName blabla.de
  User sven
  Group wheel
  Options +ExecCGI FollowSymLinks Includes Indexes MultiViews
  AddHandler cgi-script .cgi .pl
  DocumentRoot /usr/local/www/docs/sven/html/
  ScriptAlias /cgi-bin /usr/local/www/docs/sven/cgi-bin
  CustomLog /usr/local/www/docs/sven/log/access.log meinlog
</VirtualHost>

Das /usr/local/www/docs/sven/cgi-bin sieht wie folgt aus:

su-2.05b# ls -la
total 6
drwxr-xr-x 2 sven wheel 512 Jun 6 20:51 .
drwxr-xr-x 6 sven wheel 512 May 5 12:12 ..
-rwxr-xr-x 1 sven wheel 77 May 5 21:46 test.cgi

Der Inhalt der test.cgi Datei:

su-2.05b# less test.cgi
#!/usr/bin/perl

print "Content-type: text/html\n\n";
print "Hallo Welt\n";

Ich denke es sollte alles stimmen, aber wenn ich die Datei im Browser
aufrufe bekomme ich immer einen Internal Server Error.

Das Logfiles sagt dazu:

[Mon Jun 6 20:51:22 2005] [error] [client xxx.xxx.xxx.xxx] Premature
end of script headers: /usr/local/www/docs/sven/cgi-bin/test.cgi

Das Suexec Logfile gibt folgendes aus:

[2005-06-07 19:25:13]: crit: calling user mismatch (www instead of user)

Hab ich das ganze falsch verstanden, oder falsch konfiguiert?

Grüße, Sven

To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Sun 03 Jul 2005 - 14:44:03 CEST

search this site