Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » GNU/Linux » Apache + PHP / SuExec-Problem

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
07.06.2004, 13:20 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


Hi,
ich habe mehrere VirtualHosts: a.domain.tld, b.domain.tld, usw
jeder dieser hosts läuft unter einem anderen benutzer, z.b

domain.tld - apache:apache
a.domain.tld - a:apache
b.domain.tld - b:apache

Wenn ich nun in einem der Virtualhosts ein Verzeichnis per mkdir in einem PHP-Script anlege, legt er dies mit dem benutzer apache:apache an und nicht mit a:apache bzw b:apache. Was soll der mist?

Weiterhin wenn ich z.b eine Datei schreiben will, muss diese Group-Write-Rechte haben (xx7x) ansonsten schlägt der Schreibbefehl fehl! Scheinbar läuft das php in den einzelnen virtualhosts unter dem hauptbenutzer?!?

Wie kann man das umstellen? Das ist nämlich tierisch nervig!

Achja, PHP-Version ist 4.3.6 und Apache 1.3.29
--
class God : public ChuckNorris { };

Dieser Post wurde am 07.06.2004 um 18:23 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
08.06.2004, 15:19 Uhr
mike
Pinguinhüpfer
(Operator)


Leider habe ich keine Lösung - kann das Problem aber bestätigen (hab Apache 2 / PHP 5)
Ich wollte damals so was ähnliches wie du machen (mit mod_vhost_alias). Mir hat man dann geraten, die Ordner mit der ftp Funktion zu erstellen. So kann man nämlich den safe mode umgehen und das mit der Recht/Eigentümervergabe soll auch besser funtzen (ist aber ungetest - bei mir waren dann alle Ordner mit dem www Owner)

mfg
--
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
08.06.2004, 15:47 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


ftp-funktion?

du meinst per ftp_* einloggen und damit den ordner erstellen?
nur wenn der user kein ftp-zugriff hat?
--
class God : public ChuckNorris { };

Dieser Post wurde am 08.06.2004 um 15:48 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
08.06.2004, 20:53 Uhr
mike
Pinguinhüpfer
(Operator)


Das ist natürlich schlecht
Es gibt mehere Artikel drüber - hab gleich den von php.net genommen. Er beschreibt dort genau diese Problem:

Zitat:

If you're on a shared *nix server, a directory created through mkdir() will not be assigned to you, but to the user that your host's server or php process is running under, usually 'nobody', 'apache' or 'httpd'.

In practice, this means that you can create directories, even add files to them, but you can't delete the directory or its contents nor change permissions.

It is therefore advised to create directories through PHP's FTP API. Here's a function I wrote:

// create directory through FTP connection
function FtpMkdir($path, $newDir) {

$server='ftp.yourserver.com'; // ftp server
$connection = ftp_connect($ftp_server); // connection


// login to ftp server
$user = "me";
$pass = "password";
$result = ftp_login($connection, $user, $pass);

// check if connection was made
if ((!$connection) || (!$result)) {
return false;
exit();
} else {
ftp_chdir($connection, $path); // go to destination dir
if(ftp_mkdir($connection,$newDir)) { // create directory
return $newDir;
} else {
return false;
}
ftp_close($conn_id); // close connection
}

}

Hope this comes in handy for someone.


--
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
08.06.2004, 22:35 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


Hmm, naja ich kann ja ftp-zugang einrichten, ist halt nur ungünstig, bei jedem mkdir/chmod ne ftp-connection zu öffnen usw, aber naja, scheint mir nichts anderes übrig zu bleiben.

Achja,
bei Apache2 gibts doch das perchild.c-Modul, kann man da nicht ein child einem bestimmten user, also dadurch auch einem bestimmten vhost zuweisen und wird dieser dann nicht darunter ausgeführt? wäre mal ein test wert, nur müsste ich dann meine beiden eigenen module wahrscheinlich für apache2 umschreiben, das möchte ich nicht umbedingt
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
09.06.2004, 10:02 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


schön und gut, so funktioniert das nun, nur: er erstellt mir nun die ordner als gruppe "nogroup"! Das kann ich auch nicht brauchen! Man das ist echt nervig.

Über den ftp_site command kann man auch chmod ausführen. nur wie gesagt, das gruppenproblem besteht weiterhin...
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
09.06.2004, 13:21 Uhr
mike
Pinguinhüpfer
(Operator)


Hmm. Das mit der Gruppe finde ich komisch. Muss ich heute noch ausprobieren.

Das von dir oben erwähnte modul/funktion kenn ich leider nicht. Ich hab den mod_vhost_alias nur wie folgt verwendet:
Wenn ich in der DocumenRoot den Ordner test erstellt habe, war er automatisch unter test.domain.com erreichbar - ohne was am apache zu confen oder zu restarten.

mfg
--
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
09.06.2004, 13:29 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


das mit der gruppe lag an einem fehlenden Eintrag in der ftp-conf. nun funktioniert es...
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ GNU/Linux ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: