Zugriffsrechte eines Unterverzeichnisses mit chmod ändern

LongDonJohn

Mitglied
Hallo zusammen!

ich habe da ein Problem.

Ich habe auf meiner Internetseite einen Ordner (Adminbereich), der durch htaccess gesichert ist und von dem aus ich die Rechte eines Ordners kurzzeitig freigeben muss, um mit move_uploaded_file ein hochgeladenes Bild in den Ordner verschieben zu können. Anschließend sollen die Rechte wieder zurückgesetzt werden.

Mit dem folgenden Script versuche ich also die Rechte zu ändern:

PHP:
/* Zum FTP Server verbinden */
$conn = ftp_connect('ftp.domain.de');
if (!$conn) die('Unable to connect to ftp.example.com');

/* Als "user" mit dem Passwort "pass" einloggen */
if (!ftp_login($conn, 'user', 'pass')) die('Error logging into ftp.example.com');

/*  Das Kommando "SITE CHMOD 0777 an den Server senden */
if (ftp_site($conn, 'CHMOD 0777 ../ordner')) {
   echo "Command executed successfully.\n";
} else {
   die('Command failed.');
}

Dieses Skript funktioniert super, wenn es auf der gleichen Ebene liegt, wie der zu ändernde Ordner. Aber das es ja in einem anderen Ordner ist, versuche ich ihn per "../ordner" zu erreichen, was aber nicht klappt.

Es liegt nicht daran, dass der Ordner, aus dem ich das Script aufrufe per htaccess gesichert ist. Habe es auch aus einem "normalen" Ordner versucht - mit dem gleichen Ergebnis...

Weiß jemand, warum es nicht klappt, und was ich ändern muss?

Danke!
John
 
LongDonJohn hat gesagt.:
PHP:
/*  Das Kommando "SITE CHMOD 0777 an den Server senden */
if (ftp_site($conn, 'CHMOD 0777 ../ordner')) {
   echo "Command executed successfully.\n";
} else {
   die('Command failed.');
}

Leider habe ich mit HTAccess oder CHMOD über PHP keinerlei erfahrung, jedoch vermute ich, dass dein Script den pfad ../ordner nicht findet.

Ich würde dir raten, mal etwas rumzuspielen. Heißt versuche mal alle möglichen Variationen aus (wie z.b. ../ordner/, /../ordner/, etc.)

Ich denke, dass dein script versuchst die Datei ordner im Unterverzeichniss zu Chmodden. Natürlich kann ich mich auch irren :rolleyes:
 
Ich habe da noch ein bischen rumgespielt - und plötzlich klappts...

Fragt mich nicht, warum, denn es ist immer noch alles so wie vorher. Vielleicht war der Server überlastet und hat die Rechte nicht schnell genug freigegeben, oder der Provider hat gerade was am Server geändert oder weiß der Teufel was - hauptsache es funktioniert!

Danke trotzdem...
 
Zurück