Tengo problemas para configurar Apache en mi MacBook en Mountain Lion después de actualizar desde Leopard. Intenté seguirestas instrucciones. Tengo la LoadModule php5_module libexec/apache2/libphp5.so
línea sin comentar /etc/apache2/httpd.conf
, tengo un my_user_name.conf
archivo /etc/apache2/users
con el contenido:
<Directory "/Users/sarah/Sites/">
Options Indexes MultiViews FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
Tengo un archivo index.html en /Users/my_user_name/Sites
, modificado a 644, propiedad de my_user_name
.
- Sin embargo, cuando voy a
http://localhost/~my_user_name
, todavía aparece 403 Prohibido. /Library/WebServer/Documents/phpinfo.php
Lo creé<?php phpinfo(); ?>
y cuando lo veo en el navegador, solo veo el código fuente.- Cuando voy a
http://localhost
, veo "¡Funciona!". Sin embargo, después de hacerlosudo apachectl stop
, si visitohttp://localhost
, todavía veo "¡Funciona!". ¿No debería ser inaccesible si detuve Apache?
Casi parece que hay otro servidor web detrás de mi localhost
y es por eso que mis cambios en httpd.conf
y my_user_name.conf
no hacen ninguna diferencia. ¿Algunas ideas?
Respuesta1
Bien, hemos establecido que estás ejecutando varios apache
servidores.
Lo primero que sugeriría hacer es reiniciar. Normalmente, esta no es una solución que recomiendo, pero si su sistema se encuentra en algún tipo de estado inconsistente con un Apache medio muerto, esto lo resolverá y lo devolverá a un estado en el que el Las herramientas normales funcionarán para iniciar/detener el servidor web.
Si eso no logra que funcione, tendrá que determinar de dónde proviene el httpd adicional (puede usarlo lsof
(como root) para determinar qué httpd.conf
archivo está leyendo, que puede contener algunas pistas sobre qué lo instaló y cómo puedes proceder a desactivarlo o reconfigurarlo)
Respuesta2
Supongo que el servidor web adicional es el que viene integrado en OS X. Todavía está ahí en Mountain Lion, pero se eliminó la interfaz de usuario para habilitarlo y deshabilitarlo. Sin embargo, aún puedes administrarlo desde la línea de comando. OS X inicia y mantiene el servidor web integrado con launchd, por lo que lo utiliza launchctl
para administrarlo. Primero, verifique si launchd está ejecutando apache:
$ sudo launchctl list | grep apache
1526 - org.apache.httpd
Ese resultado me dice que launchd ha iniciado un elemento con la etiqueta org.apache.httpd y se está ejecutando como ID de proceso 1526. Si no tuviera un elemento de Apache activo, los resultados estarían en blanco.
Si se trata del elemento de lanzamiento proporcionado por el sistema, puedes desactivarlo con:
$ sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist
Tenga en cuenta que esto -w
hace que la descarga sea permanente (sin ella, el elemento se recargaría en el próximo reinicio).