problem mit dateirechten

Gesperrt
joe
Beiträge: 23
Registriert: Do 26. Aug 2004, 11:05
Kontaktdaten:

problem mit dateirechten

Beitrag von joe » Di 20. Sep 2005, 05:04

hallo an alle,

ich habe ein problem mit dem upload-verzeichnis.
wenn ich bilder über die contenido-dateiverwaltung hochlade, haben alle nur die rechte 600.
wenn ich nun über ftp auf diese bilddateien zugreifen möchte (z.B. um dateinamen zu ändern etc), funktioniert dies nicht, da ich über ftp nicht der user bin. ich kann nicht einmal mehr die dateien per ftp down- oder uploaden.
nun habe ich dieses problem auch schon in diesem forum gelesen, konnte es für mich aber leider nicht lösen.

anscheinend kann man ja per php diese rechte verändern, da contenido der besitzer der dateien ist.
daher habe ich versucht, das von mir verwendete bildergalerie-modul anzupassen (bildergalerie w3concept) - leider bisher ohne erfolg.

ich erhalte nämlich immer fehlermeldungen:

Warning: chmod(): Operation not permitted in /srv/www/htdocs/web301/html/cms/front_content.php(765) : eval()'d code on line 690

Warning: chmod(): Operation not permitted in /srv/www/htdocs/web301/html/cms/front_content.php(765) : eval()'d code on line 690

der geänderte code für diese fehlermeldung:

Code: Alles auswählen

   function readDir() {
      $dir = opendir($this->abspath['pictures']);
      while ($file = readdir($dir)) {

         chmod($this->abspath['pictures'].$file, 0644); // änderung

         $bildinfo = @getimagesize($this->abspath['pictures'].$file);
          
         if (!empty($bildinfo)) {
        
            $picture[] = $file;
         }
      }

      sort($picture);
      closedir($dir);
andere version die ich geteste habe war:

Code: Alles auswählen

   function readDir() {
      $dir = opendir($this->abspath['pictures']);
      while ($file = readdir($dir)) {

         $bildinfo = @getimagesize($this->abspath['pictures'].$file);
          
         if (!empty($bildinfo)) {

            chmod($file, 0644); // änderung

            $picture[] = $file;
         }
      }

      sort($picture);
      closedir($dir);
dieser code brachte folgende fehlermeldung:

Warning: chmod(): Unable to access Schrankwand.jpg in /srv/www/htdocs/web301/html/cms/front_content.php(765) : eval()'d code on line 694

Warning: chmod(): No such file or directory in /srv/www/htdocs/web301/html/cms/front_content.php(765) : eval()'d code on line 694


was mache ich falsch?
danke im voraus
joe

emergence
Beiträge: 10641
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Di 20. Sep 2005, 10:30

wenn ich nun über ftp auf diese bilddateien zugreifen möchte (z.B. um dateinamen zu ändern etc), funktioniert dies nicht, da ich über ftp nicht der user bin. ich kann nicht einmal mehr die dateien per ftp down- oder uploaden.
da kannst du dich an sich nur an den provoder wenden, der dafür sorgen muss das zumindestens ein download der dateien möglich sein muss...

auf der anderen seite
wenn du nicht mal die möglichkeit hast chmod in php routinen zu verwenden kannst du das problem nie selbst beheben...
vermutlich hat der provider chmod in php disabled...
hier gilt das selbe wende dich an deinen provider...
*** make your own tools (wishlist :: thx)

joe
Beiträge: 23
Registriert: Do 26. Aug 2004, 11:05
Kontaktdaten:

Beitrag von joe » Di 20. Sep 2005, 10:50

hallo emergence,

danke für deine antwort - aber ich habe einen fehler in meinem chmod gehabt.
erst als ich den relativen pfad angegeben habe, hat es so funktioniert wie ich wollte:

Code: Alles auswählen

 <?
$dir = opendir("upload/aHaustueren/");
      while ($file = readdir($dir)) {
         $bildinfo = @getimagesize("upload/aHaustueren/".$file);
         if (!empty($bildinfo)) {

chmod("upload/aHaustueren/".$file,0644); // änderung

         echo $file."<br>";
            $picture[] = $file;
         }
      }
      
      closedir($dir);     
      ?>
auf jeden fall habe ich jetzt auf alle dateien wieder zugriff.
wirklich schade, dass man den chmod beim datei-upload über contenido rausgeschmissen hat.
bei meinen früheren installationen (versionen vor 4.5.x) beim gleichen provider, gab es nämlich damit nie schwierigkeiten.

so long joe

Gesperrt