Apache não responde no OS X Mountain Lion após atualização

Apache não responde no OS X Mountain Lion após atualização

Estou tendo problemas para configurar o Apache no meu MacBook no Mountain Lion depois de atualizar do Leopard. Eu tentei seguirestas instruções. Eu tenho a LoadModule php5_module libexec/apache2/libphp5.solinha descomentada /etc/apache2/httpd.conf, tenho um my_user_name.confarquivo /etc/apache2/userscom o conteúdo:

<Directory "/Users/sarah/Sites/">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

Eu tenho um arquivo index.html em /Users/my_user_name/Sites, chmodded para 644, de propriedade de my_user_name.

  • No entanto, quando vou para http://localhost/~my_user_name, ainda recebo 403 Proibido.
  • Eu criei /Library/WebServer/Documents/phpinfo.phpcom <?php phpinfo(); ?>ele e quando vejo isso no navegador, vejo apenas o código-fonte.
  • Quando vou para http://localhost, vejo "Funciona!". No entanto, depois de fazer isso sudo apachectl stop, se eu visitar http://localhost, ainda vejo "Funciona!" - isso não deveria estar inacessível se eu tivesse parado o Apache?

Quase parece que há algum outro servidor web por trás do meu localhost, e é por isso que minhas alterações httpd.confe my_user_name.confnão estão fazendo nenhuma diferença. Alguma ideia?

Responder1

OK, estabelecemos que você está executando vários apacheservidores.

A primeira coisa que eu sugeriria fazer é reiniciar - normalmente não é uma solução que recomendo, mas se o seu sistema estiver em algum tipo de estado inconsistente com um Apache meio morto, isso resolverá o problema e o levará de volta a um estado em que o ferramentas normais funcionarão para iniciar/parar o servidor web.

Se isso não conseguir colocá-lo em um estado de funcionamento, você terá que determinar de onde vem o httpd extra (você pode usar lsof(como root) para determinar qual httpd.confarquivo ele está lendo, que pode conter algumas pistas sobre o que o instalou e como você pode desativá-lo ou reconfigurá-lo)

Responder2

Suponho que o servidor da web adicional é aquele que vem integrado ao OS X. Ele ainda está lá no Mountain Lion, mas a interface do usuário para ativá-lo e desativá-lo foi removida. No entanto, você ainda pode gerenciá-lo na linha de comando. O OS X inicia e mantém o servidor web integrado com o launchd, para que você o use launchctlpara gerenciá-lo. Primeiro, verifique se o launchd está executando o apache:

$ sudo launchctl list | grep apache
1526    -   org.apache.httpd

Esse resultado me diz que o launchd iniciou um item com o rótulo org.apache.httpd e está sendo executado como ID de processo 1526. Se não tivesse um item apache ativo, os resultados ficariam em branco.

Se for o item launchd fornecido pelo sistema, você pode desligá-lo com:

$ sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist

Observe que -wtorna o descarregamento permanente (sem ele, o item seria recarregado na próxima reinicialização).

informação relacionada