man, ich nehm mir grad irgendwie zu viel vor; andauernd muss ich nachfragen
immernoch an der galerie beschäftigt habe ich nun alles funktionierend! also zumindest lokal. online muckt der server mit safe_mode herum
habe schon versucht per ini_set() das ganze zu lösen, aber irgendwie haut das nich hin!
also ich hab’s mit:
ini_set(‚safe_mode‘, 1);
probiert.
hierbei is auch die frage, wann safe_mode eignetlich aus/ein is!? php.net sagt: „0“ default. ja schön. aber 0 bedeutet in meinem kopf „aus“. und trotzdem klappts weder mit 1, noch 0
auch chmod(); hat keinen access (toll…)
also um das komplette problem zu umreissen:
ich versuche mit mkdir() einen neuen ordner zu erstellen. klappt auch super. aber trotz den gesetzten rechten:
mkdir(„path/“, 0777);
hat der erstelle ordner keine schreibrechte. (nur read und execute) aber die brauche ich um weitere unterordner zu erstellen, bzw. dateien in den ordner zu kopieren.
für denkanstösse wäre ich dankbar!
mfg
Geisterkarle
ps:
achja, meine fehlermeldungen sehen so aus:
Warning: mkdir(): SAFE MODE Restriction in effect. The script whose uid is 32019 is not allowed to access /path/ owned by uid 99 in /path2 on line 12
man, ich nehm mir grad irgendwie zu viel vor; andauernd muss
ich nachfragen
immernoch an der galerie beschäftigt habe ich nun alles
funktionierend! also zumindest lokal. online muckt der server
mit safe_mode herum
habe schon versucht per ini_set() das ganze zu lösen, aber
irgendwie haut das nich hin!
Das wird auch nichts, safe_mode kann nicht per ini_set gesetzt werden, wäre sonst auch etwas sinnlos…
hierbei is auch die frage, wann safe_mode eignetlich aus/ein
is!? php.net sagt: „0“ default. ja schön. aber 0 bedeutet in
meinem kopf „aus“. und trotzdem klappts weder mit 1, noch 0
auch chmod(); hat keinen access (toll…)
0-aus, 1-an
Schaue mit phpinfo() nach, wo die php.ini liegt, die verwendet wird, ggfs. gibt es mehrere und du änderst die Falsche.
Ansonsten kann man beim Apache-Modul das auch noch in der httpd.conf (oder einer der includierten Dateien) konfigurieren, falls zutreffend, suche mal php_admin_flag in der/den Dateien.
also um das komplette problem zu umreissen:
ich versuche mit mkdir() einen neuen ordner zu erstellen.
klappt auch super. aber trotz den gesetzten rechten:
mkdir(„path/“, 0777);
achja, meine fehlermeldungen sehen so aus:
Warning: mkdir(): SAFE MODE Restriction in effect. The script
whose uid is 32019 is not allowed to access /path/ owned by
uid 99 in /path2 on line 12
In einem per PHP angelegtem Verzeichnis kann (bei aktivierten Safe Mode) nichts geschrieben werden, da das Script dem ftp-Benutzer gehört, das von php erstellte Verzeichnis aber dem Webserver. Entweder safe_mode abschalten, oder keine Verzeichnisse mit PHP anlegen…
Schaue mit phpinfo() nach, wo die php.ini liegt, die verwendet
wird, ggfs. gibt es mehrere und du änderst die Falsche.
Ansonsten kann man beim Apache-Modul das auch noch in der
httpd.conf (oder einer der includierten Dateien)
konfigurieren, falls zutreffend, suche mal php_admin_flag in
der/den Dateien.
hm, habe durch meinen provider ein control-panel, in dem ich php-configuration angucken kann. merkwürdigerweise finde ich das:
Directive Local Value Master Value
safe\_mode Off Off
jetzt stellt sich natürlich mir die frage, weshalb des trotzdem nich geht
also um das komplette problem zu umreissen:
ich versuche mit mkdir() einen neuen ordner zu erstellen.
klappt auch super. aber trotz den gesetzten rechten:
mkdir(„path/“, 0777);
öh… was is umask()? da is php.net mal wieder „sehr genau“…
achja, meine fehlermeldungen sehen so aus:
Warning: mkdir(): SAFE MODE Restriction in effect. The script
whose uid is 32019 is not allowed to access /path/ owned by
uid 99 in /path2 on line 12
In einem per PHP angelegtem Verzeichnis kann (bei aktivierten
Safe Mode) nichts geschrieben werden, da das Script dem
ftp-Benutzer gehört, das von php erstellte Verzeichnis aber
dem Webserver. Entweder safe_mode abschalten, oder keine
Verzeichnisse mit PHP anlegen…
kann das ganze natürlich auch ohne verzeichnisse lösen, aber dann is das ganze total unübersichtlich. wäre schon schön, wenn das mal klappen würde!
hm, habe durch meinen provider ein control-panel, in dem ich
php-configuration angucken kann. merkwürdigerweise finde ich
das:
Directive Local Value Master Value
safe_mode Off Off
Ist Ok, dann sollte aber die Fehlermeldung von ganz unten vom Originalposting nicht kommen.
öh… was is umask()? da is php.net mal wieder „sehr genau“…
Die Rechte, die do bei mkdir angibst, werden mit diesem Wert vorher maskiert, d.h. wenn in umask ein Bit gesetzt ist, wird dieses beim mkdir-Recht entfernt. umask ist default 0022, was kein Schreibrecht für Gruppe und Welt bedeutet.
Kurz: Schreib ein umask(0000) vor das mkdir
Warning: mkdir(): SAFE MODE Restriction in effect. The script
whose uid is 32019 is not allowed to access /path/ owned by
uid 99 in /path2 on line 12
kann das ganze natürlich auch ohne verzeichnisse lösen, aber
dann is das ganze total unübersichtlich. wäre schon schön,
wenn das mal klappen würde!
Wenn safe_mode aus ist, KANN diese Fehlermeldung nicht kommen, und dann kannst du auch Verzeichnisse anlegen und darin schreiben. Mache einmal phpinfo() dort, wo dein Script ausgeführt wird, wahrscheinlich ist die Anzeige im Control Panel falsch, weil da das phpinfo() in einem anderen Kontext läuft. Falls das dieses Confixxx ist, das schreibt in der Include-Dateien des Apache, soweit ich weiss…