Por que o Mac OS X Lion Apache DocumentRoot / usr / htdocs?


15

Estou perplexo.

Não vejo onde /usr/htdocsé especificado como o DocumentRoot para apache2 no Mac OS X Lion.

É o DocumentRoot padrão em uma nova instalação do OSX Lion.

Alguém pode me indicar onde isso está especificado?

Procurei em todo o /etc/apache2diretório e não consegui encontrar essa regra.


nada nas /etc/apache2/available-sites/*configurações?
— Ragnq

A configuração padrão do OSX não usa a estrutura de sites disponíveis ou sites ativados.
— vinhboy

1
Não é. Uma nova instalação do OS X Lion usa /Library/WebServer/Documents, assim como os principais lançamentos anteriores ao Lion, que também é onde o botão Abrir pasta do site do computador ... em Preferências do sistema »Compartilhamento» Compartilhamento da Web aponta para. Você instalou um gerenciador de pacotes como o Homebrew, Fink ou MacPorts; XAMPP ou uma solução similar do Apache? Qual é a saída which httpde ps aux | grep httpdno Terminal?
— Daniel Beck

Não instalei nenhum desses gerenciadores de pacotes. Mas obrigado, vou olhar por esse caminho. Eu vejo a /Library/WebServer/Documentsdiretiva no arquivo httpd.conf. No entanto, obviamente está sendo substituído em outro lugar. Tentei seguir todas as referências a outro arquivo .conf, mas ainda não tive sorte.
— vinhboy

Por que não grepprocurar /usr/htdocsna sua máquina e ver onde ela é substituída? - (/ cc @dan, você não recebeu uma resposta)
— slhck 18/11/11

Respostas:


14

Quando o "Compartilhamento da Web" NÃO está ativado, ele assume /usr/htdocscomo raiz. Quando você ativa o "Compartilhamento da Web", o arquivo de configuração fica em /etc/apache2/httpd.conf. O diretório será o especificado perto da seção a seguir no arquivo.

<IfDefine WEBSHARING_ON>
#
# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory, but
# symbolic links and aliases may be used to point to other locations.
#
DocumentRoot "/Library/WebServer/Documents"

Além disso, você pode usar o diretório "Sites" ao /Users/USERNAME/Sitesacessar com localhost/~USERNAME.


Spot on. Observe também a linha ServerRoot "/usr"- com o compartilhamento na Web desativado e nenhum DocumentRoot alternativo especificado, parece que o padrão do Apache é procurar htdocsdentro da raiz do servidor definida.
— Rymo # 24/13

É verdade que alguns <IfDefine WEBSERVICE> devem ser comentados, pois é um WEBSERVICE?
— Gucho Ca

0

Ative seu compartilhamento na web primeiro, vá para as preferências do sistema -> compartilhamento e ative o compartilhamento na web. Eu escrevi um post sobre isso.


Você poderia adicionar mais detalhes? Sua postagem contém mais informações do que você disse aqui.
— Simon Sheehan

então ele escreveu um post, leia-o e reconfigure seu compartilhamento na Web no lion))) Eu também fiz isso, agora tenho a pasta "Sites" no meu diretório pessoal e tudo funciona.
— holms

0

Este Q me ajudou a resolver problemas idênticos no SnowLeopard hoje. Cuidado: foi o httpd.confin /private/etc/apache2 not /etc/apache2 (que também existe) que foi lido e apontado /Library/WebServer/Documentsno meu caso.

Espero que isso ajude (outros também).


A pasta / etc inteira é um link para / private / etc; portanto, as duas são uma e a mesma.
— precisa saber é o seguinte

@ Fireandlight27 Eu não acho que estava no SL, como eu não escreveria de outra forma. Fico feliz que eles estejam ligados no seu caso; qual versão do sistema operacional?
— Marecki
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.