safe mode problem nach FTP Upload

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • safe mode problem nach FTP Upload

    Hallo,
    ich bins schon wieder, habe noch ein Problem. Wenn ich über ftp bilder in einen ordner lade und diese mit einer index.php und einer template.php anzeigen lasse funktioniert alles bestens, wenn ich aber über ein script ein verzeichnis erstelle und bilder hochlade kommt folgende Fehlermeldung:

    Warning: opendir() [function.opendir]: SAFE MODE Restriction in effect. The script whose uid is 30 is not allowed to access . owned by uid 946 in /srv/www/htdocs/web182/html/include/gallery/test/index.php on line 109

    Warning: opendir(.) [function.opendir]: failed to open dir: Success in /srv/www/htdocs/web182/html/include/gallery/test/index.php on line 109

    Warning: readdir(): supplied argument is not a valid Directory resource in /srv/www/htdocs/web182/html/include/gallery/test/index.php on line 110

    die index.php und die template.php werden automatisch aus einem ordner in den ordner kopiert der erstellt wurde. wenn ich diesen nun aufrufe kommt die oben genannte Fehlermeldung. es ist die gleiche index.php die auch in den anderen ordnern verwendet wird, daran liegt es also nicht, nun hier mal die die zeilen 109 und 110:

    Quellcode

    1. $dh = opendir('.');
    2. while(($file = readdir($dh)) !== false) {
  • naja, wie die Fehlermeldung schon sagt:
    Der Ordner gehört eben dem Webserver (z.B. www-data), dein Script was auf den Ordner zugreifen will gehört deinem FTP Benutzer. Bei aktiviertem Safemode beißt sich das.

    Ich nehme na du musst [phpdoc]chown[/phpdoc] nur mit deinem FTP Benutzernamen anwenden.

    Ansonsten les mal den Hinweis bei php.net
    for some reason i was searching for chown() with an "on this mashine"-unknown userid and found martijn's hint very interesting. the main problem is, that if the numerical uid is used within a variable, it is checked against the /etc/passwd and returns "unknown user". a little note: use intval()!

    Quellcode

    1. chown($path_to_dir,intval($uidnumber));