Eines der größten Probleme im Zusammenhang mit Dateien am Server haben PHP-Anfänger mit den Zugriffsrechten. Im Grunde gibt es Funktionen und Befehle, die eher in das Kapitel der Dateieigenschaften gehören würden, aber der Themenkreis Zugriffsrechte ist so oft ein Thema in Foren und ähnlichen Seiten, dass es hier einen Extraplatz erhält.
Das Prinzip ist dabei recht einfach. Jede Datei, die auf einem Server gespeichert ist, hat neun Einstellungen, die jeweils gesetzt oder nicht gesetzt sind. Diese neun Einstellungen unterteilen sich in drei Spalten, wobei die erste Spalte den Besitzer der Datei betrifft, die zweite Spalte die Gruppe und die dritte Spalte die ganze Welt.
Webhosting mit viel Software bei Alfahosting (Affiliate-Link)
Jede Spalte hat drei Parameter - ausführen, schreiben und lesen. Darf eine Datei ausgeführt werden, dann gibt es den Wert 1, wenn sie beschrieben werden darf, den Wert 2 und wenn sie gelesen werden darf, den Wert 4. Die Spalten sind immer in der Reihenfolge Besitzer/Gruppe/Welt angeordnet.
Beispiele:
700 würde bedeuten, dass der Besitzer alles darf, die Gruppe und die Welt nichts
777 würde bedeuten, dass jeder mit der Datei alles machen darf
644 würde bedeuten, dass der Besitzer die Datei lesen und beschreiben darf, Gruppe und Welt dürfen nur lesen.
Soweit, sogut. In der Praxis sind die beiden letzten Beispiele häufig anzutreffen. 644 gibt es zum Beispiel fast durchwegs bei Bilder, die auf den Server geladen werden. 777 ist dann gefragt, wenn eine Datei über ein Skript online manipuliert werden darf oder soll.
Webhosting bei Alfahosting - jetzt gratis testen! (Affiliate-Link)
Was hat es mit der Welt überhaupt gemein? Damit ist der Zugriff vom Internet direkt zu verstehen, also die Erlaubnis, die Datei von einem Skript auf einer Webseite beschreiben zu dürfen. Und genau hier scheitern viele, weil die Datei nicht mit 777 eingestellt ist, das Skript aber diese Erlaubnis braucht, damit es die Datei im Sinne der Befehle nützen kann. Das Ergebnis ist dann eine Fehlermeldung, dass die permission nicht ausreicht - kurzum die Zugriffsrechten passen mit dem Bedarf nicht überein.
PHP + Dateisystem ist ein immer noch wichtiges Thema, aber eines, das durch den häufigen Einsatz der Datenbank doch zurückgegangen ist. Trotzdem gibt es zahlreiche Anwendungen, bei denen auf Dateien am Server zugegriffen wird wie Logfiles oder Statistikprogramm mit entsprechenden Auswertungen.
Ein zentrales Thema ist die Dateibearbeitung und das bedeutet, dass man die Datei öffnen können muss, schließen, auslesen oder die Größe ermitteln.
Ein weiterer Bereich beim Dateisystem betrifft die Frage des Dateizustandes oder ob es sich überhaupt um eine Datei handelt oder ob man die Adresse und den Namen eines Verzeichnisses erwischt hat.
Der dritte Bereich betrifft die Zugriffsrechte selbst. Die Datei gibt es, aber darf man sie beschreiben? Wenn nein, kann man mit dem Befehl chmod für eine Änderung sorgen, damit die Statistik die neuen Werte eintragen kann.
Themenseiten
Grundlagen
HTML-Grundlagen
CSS-Grundlagen
Javascript-Grundlagen
PHP-Grundlagen
MySQL-Grundlagen
SEO-Grundlagen
Infos, Tipps, Vermarktung
Webdesign-Lexikon
Online-Werbung
PHP-Codeschnipsel
Praxisartikel