Problem mit Berechtigungen beim Synchronisieren mit dem Site-Verzeichnis

363
yolk

Gibt es eine Möglichkeit, ein Verzeichnis symbolisch mit lnmeinem ~ / Sites / -Verzeichnis unter OS X zu verknüpfen, damit die Berechtigungen korrekt sind, sodass es in einem Webbrowser angezeigt wird, wenn ich die Webentwicklung auf einem lokalen Computer durchführe?

Das habe ln -s ~/code/web/yolkportfolio ~/Sites/yolkportfolioich dann chmod 755im Verzeichnis gemacht, aber es ist immer noch nicht lesbar.

Jede Hilfe wäre sehr dankbar.

2
Was sind die Zulassungen für den Link? sbtkd85 vor 13 Jahren 0
"755" sind die Berechtigungen. yolk vor 13 Jahren 0

2 Antworten auf die Frage

2
yolk

Das Problem war mit meiner Apache-Konfiguration. Hier ist, was es erlaubt hat, nur die FollowSymLinksRegel.

<Directory "/Users/Joe/Sites/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory> 
0
Torian

Sie haben mehrere Möglichkeiten:

1. Wenn Sie apachemit einem anderen Benutzer (nicht DocumentRootIhrem ) arbeiten und definitiv auf ein Verzeichnis in Ihrem Heimverzeichnis verweisen möchten, müssen Sie die Berechtigungen für Ihr Heimatverzeichnis ändern (die Standardeinstellungen müssen 750oder sein 700)755

Ich würde dies nur empfehlen, wenn dies Ihr Laptop oder Ihr PC ist und niemand sonst Zugriff darauf hat.

2. Die erste Option ist keine Option, aber Sie möchten immer noch DocumentRootinnerhalb Ihres Hauses, dann können Sie den Benutzer ändern, der ausgeführt wird apache. Bearbeiten Sie die Konfigurationsdatei und suchen Sie nach Anweisungen Userund Group.

3. Zweitens ist immer noch keine Option und trotzdem ... Sie wollen Dinge in Ihrem Zuhause haben. Verwenden Sie Apache mod_userdir. Mit folgender Konfiguration:

<IfModule mod_userdir.c> UserDir public_html UserDir disabled root  <Directory /home/*/public_html> AllowOverride FileInfo AuthConfig Limit Indexes Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec <Limit GET POST OPTIONS> Order allow,deny Allow from all </Limit> <LimitExcept GET POST OPTIONS> Order deny,allow Deny from all </LimitExcept> </Directory> </IfModule> 

Dies ist die Standardkonfiguration für Apaches mod_userdir unter Debian. Sie können darauf zugreifen:

/home/your-username/public_html/* 

in Ihrem Browser unter folgender Adresse:

http://somewhere/your-username/* 

4. Schließlich könnten Sie setzen DocumentRootwoanders ( /srv/www, /opt/wwwoder was auch immer) und Setupberechtigungen nach Bedarf.

Ich habe getan, was Sie mit Berechtigungen gesagt haben, aber ich habe immer noch Probleme beim Zugriff auf das Verzeichnis. Ich bekomme immer noch 403: Verboten yolk vor 13 Jahren 0
Kannst du die Konfigurationsdateien deines Apache posten? Torian vor 13 Jahren 0
Meine Apache-Konfigurationsdatei kann [hier] (http://pastebin.com/56CZFUrp) angezeigt werden. yolk vor 13 Jahren 0
Veröffentlichen Sie genau den Befehl, den Sie zum Ändern von Berechtigungen verwendet haben Torian vor 13 Jahren 0
`chmod -R 755 ~ / Sites / yolkportfolio /` welches mit meinem `~ / code`-Verzeichnis verknüpft ist. yolk vor 13 Jahren 0
Das ist genau dein Problem. Sie haben "chmod" das Verzeichnis in Ihrem Zuhause festgelegt, aber das Problem sind die Berechtigungen Ihres Hauses. Wenn Sie die Berechtigungen ändern möchten, möchten Sie `chmod 755 ~ /`. Torian vor 13 Jahren 0