mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Fr 19.04.2024 16:10 Benutzername: Passwort: Auto-Login

Thema: php, mkdir, safemode & frage vom 21.05.2004


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> php, mkdir, safemode & frage
Seite: 1, 2  Weiter
Autor Nachricht
gtz
Threadersteller

Dabei seit: 15.04.2002
Ort: -
Alter: 48
Geschlecht: Männlich
Verfasst Fr 21.05.2004 12:59
Titel

php, mkdir, safemode & frage

Antworten mit Zitat Zum Seitenanfang

hallo,
ich versuche per script ein verzeichnis whatever/path/xx/ und anschließend ein verzeichnis whatever/path/xx/yy/ zu erstellen:

Code:

$old_umask= umask(0);
$itemno= trim($_REQUEST["itemno"]);
$path= chunk_split($itemno, 2, "/");
$subpaths= explode("/", substr($path, 0, strlen($path)-1);
mkdir($GLOBALS["config"]["imgpath_prefix"].$subpaths[0], 0777);
mkdir($GLOBALS["config"]["imgpath_prefix"].$subpaths[0]."/".$subpaths[1], 0777);
umask($old_umask);


das erste verzeichnis wird anstandslos erstellt, beim zweiten gibs die fehlermeldung:

Zitat:

Warning: SAFE MODE Restriction in effect. The script whose uid is 641 is not allowed to access ../images/items/12 owned by uid 30 in /path/to/script/admin_imageupload.php on line 24

wboei zeile 24, das zweite mkdir ist.

hat irgendjemand von euch nen vorschlag dazu? besonders verwundert mich, daß das erstellte verzeichnis offenbar von jemand anderem geowned wird, als dem script.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
fraxy

Dabei seit: 25.05.2004
Ort: -
Alter: 41
Geschlecht: Männlich
Verfasst Di 25.05.2004 11:43
Titel

Antworten mit Zitat Zum Seitenanfang

hmm,

probier mal mit chown() den benutzer zu ändern, sprich von 30 auf 641
nur ne idee. ansonsten wär noch interessant ob du ihm ersten dir dateien erstellen kannst?

welcher provider? vielleicht hat der provider ja ne art kundenforum, da hätte dann bestimmt schonmal jemand vor dir dasselbe problem.
  View user's profile Private Nachricht senden
Anzeige
Anzeige
Lazy-GoD
Moderator

Dabei seit: 26.11.2001
Ort: -
Alter: 54
Geschlecht: Männlich
Verfasst Di 25.05.2004 11:47
Titel

Antworten mit Zitat Zum Seitenanfang

de.php.net/mkdir hat geschrieben:
Note: When safe mode is enabled, PHP checks whether the directory in which you are about to operate has the same UID (owner) as the script that is being executed.


SAFE MODE ausschalten, dann sollte es gehen... ist aber auch nicht die feine englische...

Ansonsten mal weiterlesen:
http://www.php.net/mkdir
  View user's profile Private Nachricht senden
rob

Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht: Männlich
Verfasst Di 25.05.2004 14:53
Titel

Antworten mit Zitat Zum Seitenanfang

Ist das dein eigener Server? Dann stell den Safe-Mode aus. Der schränkt dich eh nur ein und Du wirst ja schon wissen, was Du mit deinem Server anstellst...
Tja, und wenn es ein Shared-Server ist, also ein Server deines Providers, dann wirst Du den Safe-mode nicht abstellen können und vermutlich wird dein Provider da auch nichts dran ändern wollen...
Da hilft dann nur, einen anderen Provider zu nehmen - je nachdem, was man mit PHP machen will.

Aber trotzdem solltest Du auch im SafeMode Verzeichnisse erstellen können. Ich schätze mal, Du müßtest nur die UID des Verzeichnisses ändern, in dem das neue Verzeichnis erstellt werden soll.
  View user's profile Private Nachricht senden
gtz
Threadersteller

Dabei seit: 15.04.2002
Ort: -
Alter: 48
Geschlecht: Männlich
Verfasst Di 25.05.2004 15:01
Titel

Antworten mit Zitat Zum Seitenanfang

ne, is nich mein eigener server, und der provider will verständlicher weise den safemode nicht ausschalten. es scheitn ein bekanntes problem zu sein, daß die benutzerrechtegeschichte im safemode irgendwie inkonsistent geregelt is.
ich hab mir jetz so beholfen:

wenn ich ein verzeichnis erstellen muß, bau ich ne ftp-verbindung zum server auf, ftp_mkdir das verzeichnis, ftp_chmod drauf und dann ftp-verbindung benden. geht erstaunlich schnell, selbst wenn ich in einem aufruf gute 11000 verzeichnisse erzeugen muß.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
fraxy

Dabei seit: 25.05.2004
Ort: -
Alter: 41
Geschlecht: Männlich
Verfasst Di 25.05.2004 15:21
Titel

Antworten mit Zitat Zum Seitenanfang

bei meinem provider ist safemode aus, kann das daher nicht ausprobieren.

Safe Mode denies all access to files from scripts that are owned by a different user than the file

was gehen könnte:
wenn du das script ebenso wie das verzeichnis erst mittels script erstellst(einmalig).
der besitzer des scripts dürfte derselbe sein wie der des (zu erstellenden) verzeichnisses und dürfte somit auch darin wieder verzeichnisse erstellen.
  View user's profile Private Nachricht senden
gtz
Threadersteller

Dabei seit: 15.04.2002
Ort: -
Alter: 48
Geschlecht: Männlich
Verfasst Di 25.05.2004 15:24
Titel

Antworten mit Zitat Zum Seitenanfang

fraxy hat geschrieben:
bei meinem provider ist safemode aus, kann das daher nicht ausprobieren.

Safe Mode denies all access to files from scripts that are owned by a different user than the file

was gehen könnte:
wenn du das script ebenso wie das verzeichnis erst mittels script erstellst(einmalig).
der besitzer des scripts dürfte derselbe sein wie der des (zu erstellenden) verzeichnisses und dürfte somit auch darin wieder verzeichnisse erstellen.


ne, das läuft nich. im safemode gehören die erstellten files und direcotries dem webserver (zumindest in der konfiguration, mit der ich gesegnet bin). es sei denn, ich gehe den umweg über ftp, dann gehören die files natürlich dem ftp-user, also mir.

und ich weiß auch zur implementationszeit noch nicht, welche verzeichnisse alle im laufe der zeit benötigt werden.


Zuletzt bearbeitet von gtz am Di 25.05.2004 15:25, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
fraxy

Dabei seit: 25.05.2004
Ort: -
Alter: 41
Geschlecht: Männlich
Verfasst Di 25.05.2004 15:28
Titel

Antworten mit Zitat Zum Seitenanfang

gtz hat geschrieben:

ne, das läuft nich. im safemode gehören die erstellten files und direcotries dem webserver (zumindest in der konfiguration, mit der ich gesegnet bin). es sei denn, ich gehe den umweg über ftp, dann gehören die files natürlich dem ftp-user, also mir.

und ich weiß auch zur implementationszeit noch nicht, welche verzeichnisse alle im laufe der zeit benötigt werden.


eben, wenn das "directory-erstell-script" dem webserver gehört kann dieses script auch verzeichnisse innerhalb von erstellten verzeichnissen erstellen.
du musst nur dafür sorgen, dass das script welches die verzeichnisse erstellt, auch dem webserver gehört.
das müsste der fall sein wenn du es per php erst erzeugst, als file ablegst.

theoretisch müsst das klappen, schlagt mich ansonsten.
  View user's profile Private Nachricht senden
 
Ähnliche Themen php : mkdir() - problem
[PHP] SafeMode Off. Wie?
SafeMode und PclZip
PclZip und SafeMode
Rechtliche Frage bzw. einfach ne Frage :)
Frage nach der Frage
Neues Thema eröffnen   Neue Antwort erstellen Seite: 1, 2  Weiter
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.