Ich hatte einen Mac unter OS X Lion. Ich aktualisiere es auf Mountain Lion und kaufe die OS X Server- Software im AppStore .
Von Anfang an verwende ich die in Mac OS gebündelte Apache-Version, und sie funktioniert einwandfrei.
Aber nachdem ich einige Probleme gelöst habe (wie die Änderung des Speicherorts des Hauptverzeichnisses von /Library/WebServer/Documents
nach /Library/Server/Web/Data/Sites/Default
), kann ich nicht herausfinden, wie ich es konfigurieren soll, UserDir
damit es wieder funktioniert!
Wie hier erklärt :
Bitte beachten Sie, dass die Installation von Mountain Lion den Inhalt des Verzeichnisses entfernt.
/private/etc/apache2/users
Wenn Sie sich also darauf verlassen haben, dass diese Konfigurationsdateien für Sie funktionieren, hoppla.
Also folge ich den hier gefundenen Ratschlägen , und schließlich /etc/apache2/extra/httpd-userdir.conf
sieht meine Datei so aus:
#
# UserDir: The name of the directory that is appended onto a user's home
# directory if a ~user request is received. Note that you must also set
# the default access control for these directories, as in the example below.
#
UserDir Sites
#
# Users might not be in /Users/*/Sites, so use user-specific config files.
#
Include /private/etc/apache2/users/*.conf
<IfModule bonjour_module>
RegisterUserSite customized-users
</IfModule>
<Directory "/Users/*/Sites/">
Options Indexes
Order allow,deny
Allow from all
</Directory>
Aber nach einigen oder Neustarts ist es unmöglich, wieder auf meinen Durchgang sudo apachectl restart
zuzugreifenUserDir
/Users/utilisateur/Sites/
http://127.0.0.1/~utilisateur
Könnt ihr mir bitte einen Tipp für die Konfiguration geben?
Denken Sie daran: Ich habe die Server-Software aus dem AppStore installiert.
Vielen Dank im Voraus!
[BEARBEITEN] Ich habe auch diese Empfehlungen ausprobiert: Mountain Lion, Apache, Sites-Ordner, htaccess und mod_rewrite , aber es hilft nicht ...
[BEARBEITEN 2] Als Antwort auf das mögliche Duplikat mit "Wie kann ich mein Benutzerverzeichnis wieder für die Webfreigabe verwenden?" , ich werde sagen, dass es in meinem Fall kein permission denied
, sondern ein 404 Not Found
. Es liegt wahrscheinlich an der gleichzeitigen Installation der OS X Server- Anwendung aus dem AppStore , also ist es meiner Meinung nach ein eindeutiges Problem…
Tatsächlich habe ich die bereitgestellte Lösung getestet, und sie funktioniert bei mir überhaupt nicht.
Es scheint, dass die Apache-Konfigurationsdateien in /etc/apache2
überhaupt nicht von der Apache-Version berücksichtigt werden, die von der Serveranwendung bereitgestellt wird .
Bei der Serveranwendung sind alle Konfigurationen enthalten/Library/Server/Web/Config/apache2
Wie die ReadMe.txt
dieses Verzeichnisses sagt, ist die Standard-Apache-Konfigurationsdatei httpd_server_app.conf
, und ich musste nur die Zeile Include /private/etc/apache2/extra/httpd-userdir.conf
in dieser Datei auskommentieren!
Problem gelöst.
[BEARBEITEN] Wie von Kristopher Johnson mitgeteilt , kann es auch erforderlich sein, die Kommentare zu entfernenLoadModule apple_userdir_module
LoadModule apple_userdir_module ...
die antwort ist wie folgt:
Sie müssen überprüfen, ob Sie eine Datei mit dem Namen .conf in diesem Verzeichnis haben:
/private/etc/apache2/users/
Ich denke, Sie haben standardmäßig die Guess.conf-Datei mit diesem Inhalt:
# cat /private/etc/apache2/users/Guest.conf
<Directory "/Users/Guest/Sites/">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Wenn Sie den Benutzer „macuser“ haben und die URL verwenden möchten localhost/~macuser
, müssen Sie die macuser.conf
mit den richtigen Informationen erstellen (Sites-Verzeichnis, wahrscheinlich /Users/macuser/Sites
). Nach der Änderung müssen Sie den Apache-Prozess neu starten:
sudo apachectl restart
kein Hang