J'ai trois hôtes virtuels fonctionnant dans apache2 sur mon Macintosh personnel exécutant OS X Mavericks et j'ai rencontré un nœud de confusion. Ils sont configurés dans mon fichier httpd-vhosts.conf comme suit:
<VirtualHost *:80>
DocumentRoot "/Library/WebServer/Documents"
ServerName localhost
ServerAlias localhost
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/Library/WebServer/Documents/dev1"
ServerName dev1.local
ServerAlias www.dev1.local
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/Library/WebServer/Documents/dev2"
ServerName dev2.local
ServerAlias www.dev2.local
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/Library/WebServer/Documents/dev3”
ServerName dev3.local
ServerAlias www.dev3.local
</VirtualHost>
Remarque: La première entrée me permet de taper "localhost" et de le charger comme vous vous y attendez sans que Virtual Hosts ne soit en cours d'exécution.
dev1 et dev2 fonctionnent correctement, mais j'obtiens une erreur 404 disant "L'URL demandée / est introuvable sur ce serveur." lorsque j'essaie de charger dev3 sur la machine locale. Les trois dossiers Dev ont les mêmes autorisations que j'ai vérifié les noms. Quand j'ai vérifié le error_log, j'ai trouvé ceci:
[Fri Jan 24 12:55:07 2014] [erreur] [client 127.0.0.1] Le fichier n'existe pas: / Library / WebServer / Documents / dev3 \ xe2 \ x80 \ x9d
Est-ce que quelqu'un sait pourquoi Apache ajoute un "\ xe2 \ x80 \ x9d" à la fin du chemin du dossier, ou pourquoi dev3 ne se charge pas? (Je soupçonne que ces caractères ajoutés au hasard sont la raison pour laquelle) Toute entrée est la bienvenue! Merci d'avoir lu!
la source
makes a "Not Bad" face and face palms hand through head
Maintenant, voyez, cela a tellement de sens. Cela m'arrive aussi avec les formulaires HTML ... MERCI! Je me gratte la tête depuis une heure à ce sujet. Comment ce caractère est-il tapé par rapport au guillemet régulier @DanFromGermany?^M
fins de ligne ou similaires, c'est à cause d'une mauvaise fin de ligne (\r\n
caractères) dos / unix / mac (il existe des outils: dos2unix etc.), juste au cas où; DVous avez raté le
VirtualHost
réglage.NG:
DocumentRoot "/Library/WebServer/Documents/dev2"
D'ACCORD:
DocumentRoot /Library/WebServer/Documents/dev2
la source
DocumentRoot "/ Library / WebServer / Documents"
ça devrait être
DocumentRoot / Library / WebServer / Documents
pas de "" dans DocumentRoot
la source