RE: apache2 - perl - qmail - Strato
Rolf,
From: Rolf Scheurer Sent: Mittwoch, 9. November 2005 10:33
Ich erhalte die Fehlermeldung: Premature end of script headers: mailmanager.pl
Kommst du ans error_log des apache /var/log/apache2/error_log? Dort könntest du mehr Infos zu dem Problem finden. Gruss, Peter.
Hallo Peter,
Kommst du ans error_log des apache /var/log/apache2/error_log? Dort könntest du mehr Infos zu dem Problem finden.
Im suexec_log des Apache steht: 11-09 11:55:13]: uid: (1000/megabienede) gid: (60006/60006) cmd: mailmanager.pl 11-09 11:55:13]: command not in docroot (/home/m/megabiene.de/public_html/cgi-bin/mailmanager.pl Die zweite Zeile verwirrt mich doch arg. Wenn mit "command" das Perl-Script gemeint ist, so ist es definitiv da. Im error_log steht: ...Premature end of script headers: mailmanager.pl, referer: http://www.megabiene.de/ Nix Neues also. M.f.G. Rolf
Am Mittwoch, 9. November 2005 12.33 schrieb Rolf Scheurer:
Hallo Peter,
Kommst du ans error_log des apache /var/log/apache2/error_log? Dort könntest du mehr Infos zu dem Problem finden.
Im suexec_log des Apache steht:
11-09 11:55:13]: uid: (1000/megabienede) gid: (60006/60006) cmd: mailmanager.pl 11-09 11:55:13]: command not in docroot (/home/m/megabiene.de/public_html/cgi-bin/mailmanager.pl
Die zweite Zeile verwirrt mich doch arg. Wenn mit "command" das Perl-Script gemeint ist, so ist es definitiv da. Laut: http://apache-server.com/tutorials/LPsuexec.html Sieht dies nach einem Konfigurationsfehler des Apache2 aus.
Das Script ist da, aber das ist der falsche Ort, bzw. nicht dort wo Apache2 das Script haben will. Googel liefert einige Treffer wenn Du mit der Fehlermeldung: command not in docroot apache2 suchst. Kannst Du die Konfiguration von Apache ändern? Wenn ja, dann hilft Dir der obige Link vielleicht weiter. Gruss Werner
Hallo Werner,
From: "Werner Merz"
Hallo Peter,
Kommst du ans error_log des apache /var/log/apache2/error_log? Dort könntest du mehr Infos zu dem Problem finden.
Im suexec_log des Apache steht:
11-09 11:55:13]: uid: (1000/megabienede) gid: (60006/60006) cmd: mailmanager.pl 11-09 11:55:13]: command not in docroot (/home/m/megabiene.de/public_html/cgi-bin/mailmanager.pl
Die zweite Zeile verwirrt mich doch arg. Wenn mit "command" das Perl-Script gemeint ist, so ist es definitiv da. Laut: http://apache-server.com/tutorials/LPsuexec.html Sieht dies nach einem Konfigurationsfehler des Apache2 aus.
Sehe ich inzwischen auch so. Über Deinen Link (Danke!) und weiteres Googleln bin ich auf eine Spur gestoßen. Ich vermute, dass suexec2 buggy ist. Auch Strato erzählte mir, dass bei einem Update ggf. eine Datei überschrieben wurde (s. original-Posting). Habe suexec erfolglos neu kompiliert, bin aber nicht sicher ob die Parameter stimmen.
Das Script ist da, aber das ist der falsche Ort, bzw. nicht dort wo Apache2 das Script haben will.
Bleibt die Frage, wo es hin muss, bzw. ich Apache klarmache, dass es im gewünschten Verzeichnis ausgeführt werden soll (und darf). Da ich mit Apache2 nun wirklich nicht fit bin, ist das nicht so einfach.
Googel liefert einige Treffer wenn Du mit der Fehlermeldung: command not in docroot apache2 suchst.
Kannst Du die Konfiguration von Apache ändern? Wenn ja, dann hilft Dir der obige Link vielleicht weiter.
Ändern kann ich ALLES, habe vollen root-Zugang. Ich muss nur wissen WIE ;-) Ich habe eben nochmal an die Strato-Leute geschrieben. Mal sehen ob dabei was herauskommt. Bei der vielen Googelei habe ich gemerkt, dass ich mit dem Problem nicht alleine bin. Gruß, Rolf
Hallo Rolf, hallo Leute, vorweg: formmail.pl ist (war?) "berühmt" für seine Sicherheit. Bist Du sicher, dass Du das einsetzen willst? (Es kann durchaus sein, dass aktuelle Versionen sicher sind - ich habe schon lange nicht mehr nachgesehen.) Am Mittwoch, 9. November 2005 18:13 schrieb Rolf Scheurer:
From: "Werner Merz"
Am Mittwoch, 9. November 2005 12.33 schrieb Rolf Scheurer:
Im suexec_log des Apache steht:
11-09 11:55:13]: uid: (1000/megabienede) gid: (60006/60006) cmd: mailmanager.pl 11-09 11:55:13]: command not in docroot (/home/m/megabiene.de/public_html/cgi-bin/mailmanager.pl
Aha - das erinnert mich daran, dass ich mich auch schon mit so einem Problem rumgeplagt habe ;-) [...]
Ich vermute, dass suexec2 buggy ist. Auch Strato erzählte mir, dass bei einem Update ggf. eine Datei überschrieben wurde (s. original-Posting).
Quatsch mit Soße ;-) Qmail ist übrigens auch unschuldig an Deinem Problem ;-)
Das Script ist da, aber das ist der falsche Ort, bzw. nicht dort wo Apache2 das Script haben will.
Bleibt die Frage, wo es hin muss, bzw. ich Apache klarmache, dass es im gewünschten Verzeichnis ausgeführt werden soll (und darf). Da ich mit Apache2 nun wirklich nicht fit bin, ist das nicht so einfach.
Ich vermute, Du hast in /srv/www/ oder /srv/www/htdocs/ mehr Glück ;-) Hintergrund: suExec macht beim Start diverse Sicherheitsprüfungen [1], darunter auch die Prüfung des Pfads. Allerdings meint "docroot" in diesem Fall nicht das in der httpd.conf pro vHost gesetzte DocumentRoot, sondern IIRC die compile-time-Option HTTPD_ROOT (abzufragen mit apache2ctrl -V). Ach ja: Ich habe auf dem von mir betreuten Server inzwischen ein paar mount --bind im Einsatz, damit man auch per FTP [2] trotz chroot an die CGIs kommt. Die Alternative ist der Verzicht auf suExec - dann läuft das CGI eben als wwwrun, dafür aber in einem beliebigen Verzeichnis. Gruß Christian Boltz [1] http://localhost/manual/suexec.html bei installiertem Apache-Manual, ansonsten online nachsehen. [2] Zur Sicherheit von FTP muss ich hoffentlich nichts sagen. Es gibt aber leider noch zu viele Leute, die nix anderes wollen :-/ --
Es steht dir frei, dich auch auszutragen, damit du von Idioten wie David, Thorsten, Bernd, ... nicht weiter belästigt wirst. Und ich gehöre da nicht mehr dazu? [> Matthias Houdek und Florian Gross in suse-linux]
participants (4)
-
Christian Boltz
-
Gunreben, Peter (Peter)
-
Rolf Scheurer
-
Werner Merz