Kein Zugriffsrecht auf eigene Ordner

W

watzlav

Aktives Mitglied
Thread Starter
Dabei seit
02.11.2006
Beiträge
315
Reaktionspunkte
5
Ich hab' da ein ziemlich bescheuertes Problem: wenn ich auf meinen localhost/~[Mein Benutzer]/ zugreifen will bekomme ich die Meldung ich hätte keine Zugriffsrechte. Woran kann das liegen? Ich habe das Festplattendienstprogramm schon laufen lassen: nix. Ich müsste ganz dringend meine Webseiten im Browser anschauen können. Als normaler Benutzer darf ich komischer Weise die Daten sogar verändern.

Meine Vermutung: Safari greif als Benutzer "www" auf den localhost/~[Mein Benutzer]/ und der Benutzer "www" hat keine Rechte.
 

Anhänge

  • Bild 1.jpg
    Bild 1.jpg
    20,7 KB · Aufrufe: 111
Du musst in deiner httpd.conf folgendes hinzufügen:

Code:
<Directory /Users/*/Sites>
Allow from all
</Directory>

dann müsste es klappen. :)
 
Zuletzt bearbeitet:
du meinst httpd.conf?
Wo läge denn http.conf
 
Habe gerade selbst gemerkt, dass mein Lösungsvorschlag vielleicht etwas zu kurzbündig erklärt worden ist. Ich weiß nicht ob du folgende detaillierte Beschreibung nötig hast, aber vielleicht haben ja noch mehrere Leute dieses Problem. (Ist glaub ich ein Leopard-Problem)

Die Konfigurationsdatei vom Apache-Server lässt sich nur mit root-Rechten editieren, deshalb arbeiten wir im Terminal (zu finden unter Programme/Dienstprogramme | Applications/Utilities).

Als erstes folgendes eingeben:
Code:
cd /etc/apache2/
Damit wird in den entsprechenden Verzeichnis gewechselt.

Mit
Code:
ls -la
können wir uns dessen Inhalt mal anzeigen lassen.

Bevor wir die Datei httpd.conf editieren, machen wir eine Sicherheitskopie mit folgendem Befehl:
Code:
sudo cp httpd.conf httpd.conf.backup
Mit sudo wird das Programm cp mit root-Rechten ausgeführt. Deswegen muss man sehr vorsichtig sein, wann man sudo einsetzt.
Das erste mal wird das Administratorenpasswort gefragt und danach kann man es einige Minuten ohne erneute Passworteingabe nutzen.

Jetzt öffnen wir die Datei in einem Texteditor. Ich verwende dafür pico.
Code:
sudo pico httpd.conf

Mit Ctrl+V (nicht die Apfel-Taste! ) gehen wir bis zum Schluss der Datei.
Und jetzt folgendes hinzufügen (copy/paste funktioniert):

Code:
## Personal Settings ##
<Directory /Users/*/Sites>
Allow from all
</Directory>
Mit # beginnende Zeilen sind Kommentare und nur zur Anmerkung in diesem Fall gedacht, dass die Zeilen danach von ihnen stammt. (ich habe noch ein (by TerminalX) hinzugefügt. :) )

So, nun mit Ctrl+O und danach Enter-Taste die Datei abspeichern.

Zum Schluss nur noch mit folgendem Kommando den Apache-Server neu starten:
Code:
sudo apachectl restart

That's it! :)
 
Evtl. hast Du Filevault aktiviert. Dann hat der Webserver keinen Zugriff auf Deinen Sites Ordner und die Seiten können nicht angezeigt werden.

Die Apache Konfiguration muss man nicht verändern, da der Zugriff auf die Sites Ordner schon vorkonfiguriert ist und zwar unter "/private/etc/apache2/users/*.conf". Diese Dateien werden von httpd.conf automatisch geladen.
 
Evtl. hast Du Filevault aktiviert. Dann hat der Webserver keinen Zugriff auf Deinen Sites Ordner und die Seiten können nicht angezeigt werden.

Die Apache Konfiguration muss man nicht verändern, da der Zugriff auf die Sites Ordner schon vorkonfiguriert ist und zwar unter "/private/etc/apache2/users/*.conf". Diese Dateien werden von httpd.conf automatisch geladen.

Ich arbeite bloß mit dem Webserver-Ordner in /Library und seit ich Leopard und diesen Rechner habe, hatte ich den Site-Folder noch nicht angerührt. Aus Neugierde hab ich es vorhin versuch und bekam die gleiche Fehlermeldung wie watzlav. Filevault habe ich deaktiviert und /private/etc/apache2/users/ war leer.

Meine Lösung funktioniert auf jeden Fall. Vielleicht ist es nicht die sauberste und die Einzige, aber naja... :)
 
...
und /private/etc/apache2/users/ war leer.
...
Dann hast Du vielleicht Leopard nicht clean installiert.
Normalerweise wird für jeden neuen Benutzer eine eigene Konfigurationsdatei angelegt. Falls die nicht da sind, würde ich dazu raten, sie am vorgesehenen Platz selbst anzulegen.
 
Dann hast Du vielleicht Leopard nicht clean installiert.
Update wenn ich mich richtig erinnere.

Normalerweise wird für jeden neuen Benutzer eine eigene Konfigurationsdatei angelegt. Falls die nicht da sind, würde ich dazu raten, sie am vorgesehenen Platz selbst anzulegen.
Gibt es einen bestimmten Grund, ausser vielleicht den der Übersicht, um dies zu tun?
 
Hm... ok für alle bei denen der Ordner "/private/etc/apache2/users/" leer ist, im Terminal folgendes eingeben:
Code:
cd /private/etc/apache2/users/

Mit
Code:
ls -la
nachschauen was sich im Ordner befindet.

Pico starten:
Code:
sudo pico
Folgendes mit copy/paste einfügen, wobei die erste Zeile angepasst werden muss(den richtigen Username angeben):
Code:
<Directory "/Users/[B][I]Username[/I][/B]/Sites/">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

Ctrl+O und dann als Name für die Datei Username.conf eingeben. In meinem Fall, für den Benutzer test heißt die Datei test.conf. Danach mit Enter-Taste bestätigen und zum Schluss noch den Apache-Server neustarten (wie das geht, steht im Beitrag #4 am Schluss)

Dann benötigt ihr auch die ganzen Schritte im Beitrag #4 nicht!
 
So: Nachdem ich das jetzt ganz Brav nach Anleitung von Beitrag 10 erfolgreich durchgeführt habe hätte ich noch eine Frage:

Wie kann ich, wenn ich etwas arg wenig über UNIX weiß, mehr darüber erfahren - aus vertrauenswürdigen Quellen? Ich würde gerne diese grundlegenden Befehle wie die zur Zugriffsrechtvergabe und zum erzeugen von Ordnern lernen.

P.S.: Ich habe mein OS normal neu aufgesetzt, jedoch nicht den Einrichtungsdialog verwendet, sondern nach der Installation ein TimeMachine Backup eingespielt - daran wird's gelegen haben.
 
Wie kann ich, wenn ich etwas arg wenig über UNIX weiß, mehr darüber erfahren - aus vertrauenswürdigen Quellen? Ich würde gerne diese grundlegenden Befehle wie die zur Zugriffsrechtvergabe und zum erzeugen von Ordnern lernen.
Das erste mal wo ich mit dem Terminal und damit mit einer Shell überhaupt Kontakt hatte, war als OS X rauskam (vorher nur OS 9 gehabt ). Gelernt habe ich die Grundbefehle wie cd, pwd,rm,chmod,etc. in zwei Kapitel eines Buches über OS X(Den Rest habe ich nicht mal gelesen ;) ).
Andere Referenzen als man und google falls ich nach einem speziellen Befehl gesucht habe, hatte ich eigentlich nicht.
Am besten du machst einen neuen Thread dafür auf, es gibt sicher gute Anfänger Tutorials (oder ebooks) zu dem Thema, nur habe ich jetzt auf die schnelle bei google nichts gutes gefunden.
(Ausser vielleicht das hier, ist aber schon verhaltet (von 2003), obwohl sich die Shell Befehle eigentlich nicht geändert haben. Und dann hab ich noch das hier gefunden, sicher nützlich für später.)

P.S.: Ich habe mein OS normal neu aufgesetzt, jedoch nicht den Einrichtungsdialog verwendet, sondern nach der Installation ein TimeMachine Backup eingespielt - daran wird's gelegen haben.
Scheint als hätte das im Beitrag 10 doch nicht geklappt?
Naja Hauptsache jetzt funktioniert alles. :D
 
danke. Ich schau was ich für's Terminal Goolen kann - sonst mach ich einen neuen Thread auf.
 
Zurück
Oben Unten