Plesk 10 - Schreibrechte für alle Dateien

Crys

Lt. Commander
Registriert
Apr. 2009
Beiträge
1.651
Ich bin neulich von Confixx auf Plesk 10 bei meinem Hoster umgestiegen.
Nun habe ich nun das Problem, dass ich per fopen keine Datei mehr zum schreiben öffnen kann, es kommt immer "[...] failed to open stream: Permission denied [...]"

Wenn ich in Plesk im "File Manager" die Eigenschaften der Datei (falls vorhanden) bearbeite und bei Berechtigungen den Schreibmodus für alle setzte, dann kann mich die besagt Datei beschreiben.
Aber nur diese eine. Eine neue Datei kann ich gleich gar nicht erzeugen.

Ich möchte aber überall Dateien mit meinem eigenen Skript erzeugen lassen, wie kann ich das einstellen?
 
Du musst vermutlich die Rechte des Verzeichnisses, in dem sich die Datei befindet, entsprechend ändern.
 
@ Darlis:
Nein, dann ändere ich nur die Rechte des Ordners selbst, nicht was im Ordner ist oder was man da tun darf.


Ich habe gerade mit absoluten Pfaden versucht zu schreiben und jetzt klappt das.
Test ich noch weiter, aber es scheint so, als ob jetzt keine relativen Pfade mehr gehen.

/edit:
In meinem Webordner (in dem die index.php ist) kann ich überall schreiben, aber nicht in den Ordnern parallel dazu.
Die Verzeichnisse kann ich per ftp bearbeiten, aber nicht per php Skript. Was muss ich anstellen, dass das geht?
 
Zuletzt bearbeitet:
Da ist sicherlich open_base_dir aktiv... und das ist GUT SO!
Ein Webseiten-Script sollte niemals aus seinem Zuhause ausbrechen können und z.B. direkt die Logs manipulieren.
 
Wieso nicht?
Ich lasse Logs erstellen, damit ich sehen kann ob alles nach Plan läuft.

Und per Cronjob habe ich Sicherungen meiner Seite und der DB erstellen lassen, (selbstverständlich) in Verzeichnissen, die nicht öffentlich zugänglich sind ... das geht jetzt auch nicht mehr.
Ergänzung ()

Daran liegt es ...

Mit "ini_set('open_basedir', '/pfad/');" kann ich open_basedir leider auch nicht ändern, gibt immer false aus.
Wie kann ich auf einen parallelen Ordner neben meinen Hauptordner zugreifen lassen?
 
Du wirst open_basedir einfach nicht ändern können, weil es der Hoster insgesamt verbietet. Warum? Weil du sonst evtl. auch in Ordner schreiben (oder aus ihnen lesen) könntest, in denen definitiv nichts zu suchen hast, z.B. bei einer anderen Webseite.

Für deine Log-Problematik gibt es eine weitaus elegantere Lösung.
1.) Access- und Errorlog verwaltet eh das System, der Log-Ordner liegt parallel zum HTML-Root
2.) für alles an sonstigen Logs legt man sich im HTML-Root n logs-Ordner an, den man per .htaccess einfach gegen sämtliche Zugriffe sperrt. Zugriff ist dann nur per FTP oder mit einem passenden PHP-Script möglich, nicht aber direkt per URL.

Wir hosten selbst eine ganze Stange Webseiten. Es hat durchaus seinen Grund, warum Kunden nicht an elementaren Sicherheitseinstellungen rumpfuschen dürfen. Wenn dann nämlich was passiert ist NIIIIIEEEE der Kunde schuld, sondern immer der böse böse Hoster, der sein System nicht im Griff hat.
Wenn du partout ein unsicheres Setup haben willst, dann besorg dir n V-Server oder Dedicated Server und mach, was du willst. Wenn du dazu nicht bereit bist, dann leb damit was dein Hoster für richtig erachtet. Er weiß es definitiv besser als du.
 
Daaron schrieb:
1.) Access- und Errorlog verwaltet eh das System, der Log-Ordner liegt parallel zum HTML-Root
Diesen Ordner gibt es bei mir nicht, interessiert mich aber auch nicht.

Daaron schrieb:
2.) für alles an sonstigen Logs legt man sich im HTML-Root n logs-Ordner an, den man per .htaccess einfach gegen sämtliche Zugriffe sperrt. Zugriff ist dann nur per FTP oder mit einem passenden PHP-Script möglich, [...]
Genauso mache ich das ja. Es gibt einen Log Ordner im html-root, in dem per php-Skript Logs angelegt werden.

Daaron schrieb:
[...] nicht aber direkt per URL.
Genau das ist aber zwingend notwendig, die Logs müssen per url ausgelesen werden können.


Wo soll ich deines Erachtens nach meine Sicherungen auf den Webspace anlegen?
In einen Unterordner vom html-root, der per .htaccess gegen Zugriffe gesperrt ist. Das ist kein Problem. Ich habe alleine zwecks der Übersichtlichkeit bisher die Sicherungen immer in einen parallel Ordner speichern lassen, denn die Sicherungen haben mit dem Skript nichts zu tun.
 
Crys schrieb:
Diesen Ordner gibt es bei mir nicht, interessiert mich aber auch nicht.
Ich kenns von verschiedenen Systemen (z.B. Confixx oder ISPConfig [deutlich besser als Confixx und auch wie ich finde weit besser als Plesk]) so, dass pro User (oder besser: Website) ne passende Struktur auftaucht

Genauso mache ich das ja. Es gibt einen Log Ordner im html-root, in dem per php-Skript Logs angelegt werden.
Wenn im Webroot (html, web, www,... wie auch immer) dein Erstell-Script liegt, dann kann es natürlich nach html/var/log oder html/system/log oder wasauchimmer schreiben.


Genau das ist aber zwingend notwendig, die Logs müssen per url ausgelesen werden können.
im Webroot liegt dann eine "log.php", die per GET-Parameter die Logs ausliest, WENN ein Login korrekt erfolgt ist. include() schert sich nicht um .htaccess
 
Je nachdem, was Plesk so drauf hat... ISPConfig legt z.B. parallel zum Webroot automatisch ein Backup (bzw. mehrere) an, aktuell aber leider nur Dateien, kein SQL-Dump (nächstes Release kommts wohl).
Viel besser wäre aber, wenn du deine Backups gar nicht auf dem Webserver lagerst. Was nutzen sie dir da, wenn mal wirklich was übles passiert? Backups gehören in den heimischen Schrank, z.B. auf DVDs oder Band.... aber keinesfalls auf das Medium, von dem man das Backup erstellt.

Oder anders: Was nutzen dir Backups, die von deinem Webscript aus erstell- udn löschbar sind, wenn ein Eindringling oder Bug im Script die Backups zerballern kann?
 
Oh, jetzt geht das wieder los ...
Die Sicherungen werden einmal in der Woche per ftp vom Server auf meinen Heimischen WHS überspielt.

Wie gesagt habe ich Plesk, kein ISPConfig. So komme ich nicht weiter.
 
Plesk hat auch ne Autobackup-Funktion. Kein Plan, ob die was taugt, aber es hat eine.
 
Bei mir gibt es keine Sicherungsfunktion. Ich kann die Seite klonen, aber das auch nicht automatisch.
Ergänzung ()

.

In Plesk kann man im Untermenü der Domain open_basedir bearbeiten. Problem erledigt.
 

Ähnliche Themen

Zurück
Oben