peter: Config_lite funktioniert auf XAMPP aber nicht auf dem Webserver?

Ich verwende für so eine Art "CMS" config_lite, wenn ich das auf localhost teste funktioniert das auch ausgezeichnet, sobald es allerdings auf den webserver stelle, kommt folgende Fehlermeldung:

Warning: file_put_contents(db/contents.cfg) [function.file-put-contents]: failed to open stream: Permission denied in /www/htdocs/w00edbb9/.../php/ini/Config/Lite.php on line 203  
  
Fatal error: Uncaught exception 'Config_Lite_Exception_Runtime' with message 'failed to write file `db/contents.cfg' for writing.' in /www/htdocs/w00edbb9/.../php/ini/Config/Lite.php:204 Stack trace: #0 /www/htdocs/w00edbb9/.../php/ini/Config/Lite.php(123): Config_Lite->write('db/contents.cfg', Array) #1 /www/htdocs/w00edbb9/.../save.php(15): Config_Lite->save() #2 {main} thrown in /www/htdocs/w00edbb9/.../php/ini/Config/Lite.php on line 204

bin mir aber nicht sicher ob das an fehlenden Schreibrechten liegt (wenn ja, wie behebe ich diesen mangel dann?) oder daran, dass der server kein PEAR hat (das hat soweit ich weiß dependencies in der richtung) - oder liegt es überhaupt an ganz was anderem?
bin servertechnisch leider ziemlich schwach und habe keine ahnung was ich tun könnte, damit das funktioniert :(

vielen dank schon mal im vorhinein für alle antworten :)

  1. bin mir aber nicht sicher ob das an fehlenden Schreibrechten liegt (wenn ja, wie behebe ich diesen mangel dann?)

    Daran liegt es vermutlich. Und mit chmod kannst du das ändern

    oder daran, dass der server kein PEAR hat (das hat soweit ich weiß dependencies in der richtung) - oder liegt es überhaupt an ganz was anderem?

    Das hat mit Pear nichts zu tun, allerdings kannst du Pear in jedem Webspace direkt installieren.

    1. bin mir aber nicht sicher ob das an fehlenden Schreibrechten liegt (wenn ja, wie behebe ich diesen mangel dann?)

      Daran liegt es vermutlich. Und mit chmod kannst du das ändern

      Habe mich jetzt über chmod informiert, verstehe aber die Logik nicht ganz - müsste ich da nun die Berechtigungen der zu beschreibenden, der schreibenden oder der die schreibende includenden Datei ändern? Wie würde das aussehen? (sry bin auf diesem Gebiet wirklich ganz neu)

    2. Wenn ich die Rechte der Dateien mit PHP auslese erhalte ich "rw-r--r--" - das heißt doch, dass ich sie lesen und beschreiben kann, oder? Ich verstehe nicht warum das nicht funktioniert...

      1. Wenn ich die Rechte der Dateien mit PHP auslese erhalte ich "rw-r--r--" - das heißt doch, dass ich sie lesen und beschreiben kann, oder? Ich verstehe nicht warum das nicht funktioniert...

        Das heisst, der Besitzer kann lesen und schreiben.
        Wenn dein Server mit mod_php läuft, ist der User, der schreiben will, der User, unter dem der Webserver läuft (unter Debian z.B. www-data).

        Deshalb brauchst du für Dateien 666 (-rw-rw-rw-) und für Ordner 777 (drwxrwxrwx).

        Natürlich brauchen die Dateien/Ordner die Rechte, die verändert werden sollen. Wenn du in einen Ordner schreiben willst, braucht dieser die entsprechenden Rechte.

        Es macht auch Sinn, dass du vor dem Schreiben prüfst, ob die Datei oder der Ordner beschreibbar ist.

        1. Deshalb brauchst du für Dateien 666 (-rw-rw-rw-) und für Ordner 777 (drwxrwxrwx).

          ok danke, habe das jetzt geändert und es funktioniert :)

          Es macht auch Sinn, dass du vor dem Schreiben prüfst, ob die Datei oder der Ordner beschreibbar ist.

          mit dieser fileperms() function? inwiefern macht das sinn? wenn ich sie nicht beschreiben kann, kann ich ja auch nicht die schreibrechte ändern, oder?

          1. mit dieser fileperms() function? inwiefern macht das sinn? wenn ich sie nicht beschreiben kann, kann ich ja auch nicht die schreibrechte ändern, oder?

            Sicher kannst du. Entweder gehört die Datei/der Ordner dem FTP-Benutzer, also kann der das ändern oder das Zeugs gehört dem Webserver-Benutzer, dann kann der das. Also entweder per FTP oder Filesystem-Operation, was beides mit PHP umgesetzt werden kann.

            1. mit dieser fileperms() function? inwiefern macht das sinn? wenn ich sie nicht beschreiben kann, kann ich ja auch nicht die schreibrechte ändern, oder?

              Sicher kannst du. Entweder gehört die Datei/der Ordner dem FTP-Benutzer, also kann der das ändern oder das Zeugs gehört dem Webserver-Benutzer, dann kann der das. Also entweder per FTP oder Filesystem-Operation, was beides mit PHP umgesetzt werden kann.

              naja jetzt funktioniert es jedenfalls und ich bin glücklich *g*