PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : simples PHP-Script gesucht



samsara
12-06-2005, 12:46
Bin in PHP leider kaum bewandert; braeuchte ein simples Script, das folgendes erreicht: Datei einlesen, Datei unter dem gleichen Name wieder schreiben. (es geht darum, dass der Owner der Datei sich dabei aendert, was ich mit chown offenbar nicht erreichen kann (auf Solaris, auf Debian waere es kein Problem; hat offenbar was mit den Eigenheiten des users "nobody" zu tun)).

Danke,

Samsara

maik15
12-06-2005, 13:04
Owner??? chown???
Was ist das?
Wie man datein einliest und ausliest, kann ich dir sagen aber was du genau willst ist mir unklar!

Maik

samsara
12-06-2005, 21:56
Meine Loesung:

<?php
$content = file_get_contents ("config.phl");
print ("$content");
$outfile = fopen ("config.php","w");
fwrite ($outfile, $content);
fclose ($outfile);
chmod("config.php", 0600);
?>

maik15:
http://www.linuxfibel.de/access.htm
http://www.selflinux.org/selflinux/html/nutzer_unter_linux.html
http://de.wikipedia.org/wiki/Chmod

Gruss,

Samsara

undefined
13-06-2005, 15:40
In wie fern hatte das jetzt mit dem Benutzer zu tun?
Die Benutzerrechte liegen bei PHP immer auf der Seite des Webservers (auf den php aufgesetzt ist). Wenn also der Webserver Benutzer wwwrun ist, so werden die Benutzer Rechte auch darauf gesetzt. chmod ist nur für die Dateirechte und nicht für die Benutzer Rechte zuständig. Es sei denn dein Server läuft mit suexec, was aber im Moment noch sehr buggy ist und nicht bei jedem Provider eingesetzt wird. Im klartext, ein ändern der Benutzerrechte ist zurzeit unter PHP nicht möglich, was eigentlich so auch gut ist. Wenn du trotzt alledem die Benutzer-Rechte Ändern möchtest, muss der Benutzer in der Gruppe des Superusers sein, was aber wohl kein Provider zulassen wird ;)
http://www.php.net/manual/de/function.chown.php

samsara
13-06-2005, 17:16
undefined,

Dir ist nicht aufgefallen, dass wir eine Datei oeffnen, die nicht wwwrun aka nobody gehoert, und sie unter neuem Namen ausschreiben. D.h. wir gehen von


-rw----r-- user group config.phl
zu

-rw------- nobody nobody config.php

HTH,

Samsara