Auf meinem Entwicklungscomputer wird ein Ubuntu-Server (12.04) ausgeführt. Es befindet sich in einer VM. Es ist mir gelungen, Apache2, MySQL und PHP einzurichten. Ich kann von meinem Host-Browser aus auf den Server zugreifen, indem ich ihn auf die IP zeige. Hurra!

Meine nächste Aufgabe besteht darin, das Dateisystem so einzurichten, dass ich Projektdateien auf meinem Host-Computer (Mac OS X 10.7) bearbeiten kann. Klicken Sie auf Speichern und zeigen Sie sie in meinem Browser über den Linux-Server an.

Ich versuche dies zu erreichen, indem ich einen Ordner auf meinem Mac für die VM freigebe, der auf /mnt/hgfs/foldername eingestellt ist. Dann habe ich meinen virtuellen Host in Apache2 auf diesen Ordner verwiesen. chmod der Ordner zu 777 zu Testzwecken und versuchte, von meinem Mac aus auf die Dateien zuzugreifen. Ich erhalte eine 403 Forbidden.

Wie kann ich die VM so einrichten, dass sie einen Ordner für meinen Mac freigibt, damit ich nicht alle meine Dateien per FTP übertragen muss Der Gedanke? Ein Gedanke war rsync der Ordner /mnt/hgfs/* im public_html

Kommentare

  • Können Sie einen Test durchführen und Ihren Apache auf einen lokalen (nicht gemounteten) Ordner verweisen? Wenn dies funktioniert, liegt das Problem möglicherweise nur am Apache Benutzer haben keinen Zugriff auf Ihr Mount. Könnten Sie auch eine Kopie Ihres / etc / fstab
  • @Rqomey posten? Ja, wenn ich Apache auf einen lokalen (nicht gemounteten) Ordner zeige, funktioniert es einwandfrei! Und ja, Apache Benutzer hat keinen Zugriff auf Ihr Mount, aber ich kann ' Eigentümer und Gruppe nicht ändern. Ich habe permission denied
  • Führen Sie chmod 777 vom Mac aus.
  • @totti I do. Aber warum? Die Berechtigungen sind bereits 777. Probleme mit dem Eigentümer
  • @brainforce Könnten Sie den Inhalt von / etc / fstab posten? Ich vermute, Sie haben ein Mount Option, die Ihre Berechtigungen einschränkt.

Antwort

Sie müssen sicherstellen, dass Apache über alle Berechtigungen verfügt bis zum öffentlichen Ordner. Abgesehen davon, dass es gut funktionieren sollte, mache ich es die ganze Zeit.

cmhod o+rx /mnt
chmod o+rx /mnt/hgfs/
chmod o+rx /mnt/hgfs/foldername

Apache wahrscheinlich kann nicht in mnt gelangen

Kommentare

  • Vielen Dank für die Überprüfung! Ich habe Berechtigungen 777 für alle Ordner, aber Fehler ist immer noch vorhanden. Ich denke, das Problem ist, dass der Besitzer des aktuellen Verzeichnisses und aller darin enthaltenen Dateien ein 502 und die Gruppe der Dialout ist. Und ich kann nicht ausführen Befehl chown , erhalte eine Fehlermeldung: Vorgang nicht zulässig .
  • Wie lauten die Berechtigungen für jeden Ordner im Pfad?
  • Berechtigungen sind 777, Eigentümer – 502 (Ich denke, ' ist meine aktuelle Benutzer-ID vom Mac) , group – dialout. Und ich kann nur Berechtigungen ändern, nicht Eigentümer oder Gruppe
  • existiert Benutzer 502 lokal? Ist Apache in der Dialout-Gruppe? Apache kann feststellen, dass ' zwischen einem Mount und einem lokalen Ordner nicht anders ist. Es muss sich um ein Berechtigungsproblem handeln. Ist irgendetwas davon ein Symlink?
  • sudo adduser mbp -u 502 sollte es tun.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.