Eu tenho três Hosts Virtuais em execução no apache2 no meu Macintosh pessoal executando o OS X Mavericks e tive um monte de confusão. Eles estão configurados no meu arquivo httpd-vhosts.conf da seguinte maneira:
<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>
Nota: A primeira entrada permite-me digitar "localhost" e carregá-la como você esperaria sem os Hosts Virtuais em execução.
dev1 e dev2 funcionam bem, mas recebo um erro 404 dizendo "A URL solicitada / não foi encontrada neste servidor". quando tento carregar o dev3 na máquina local. Todas as três pastas Dev têm as mesmas permissões que verifiquei os nomes. Quando verifiquei o error_log, encontrei o seguinte:
[Fri, 24 de janeiro, 12:55:07 2014] [erro] [cliente 127.0.0.1] O arquivo não existe: / Library / WebServer / Documents / dev3 \ xe2 \ x80 \ x9d
Alguém sabe por que o Apache está anexando um "\ xe2 \ x80 \ x9d" ao final do caminho da pasta ou por que o dev3 não está carregando? (Eu suspeito que esses caracteres adicionados aleatoriamente sejam o motivo). Qualquer entrada bem-vinda! Obrigado pela leitura!
fonte
makes a "Not Bad" face and face palms hand through head
Agora veja, isso faz muito sentido. Isso acontece comigo também com formulários HTML ... OBRIGADO! Estou coçando a cabeça há uma hora sobre isso. Como esse caractere é digitado em comparação às aspas regulares @DanFromGermany?^M
final de linha ou semelhante, é por causa do final incorreto da linha (\r\n
chars) dos / unix / mac (existem ferramentas: dos2unix etc), apenas por precaução; DVocê perdeu a
VirtualHost
configuração.NG:
DocumentRoot "/Library/WebServer/Documents/dev2"
ESTÁ BEM:
DocumentRoot /Library/WebServer/Documents/dev2
fonte
DocumentRoot "/ Biblioteca / Servidor da Web / Documentos"
deveria ser
DocumentRoot / Library / WebServer / Documents
no "" no DocumentRoot
fonte