¿Cómo convertir Mac OS X Lion en un servidor web?

Después de usar MAMP durante mucho tiempo, descubrí que en realidad podía usar el servidor Apache integrado de Snow Leopard. Ahora que actualicé a Lion, ya no tengo idea de cómo hacer esto.

¿Sabes cómo convertir mi Mac OS X Lion en un servidor web, para que pueda ejecutar fácilmente la última versión de PHP y MySQL en él? Además, ¿cómo configuro los alias "localhost"? Recuerdo que era un archivo httpd.conf, algo que parece que ya no encuentro en Lion.

Solo una pequeña ayuda para los amantes del editor de GUI: para usar TextMate como editor predeterminado desde Terminal, puede llamarlo como mate. sudo mate /etc/apache2/httpd.conf Es una buena idea registrarlo en ~/.bash_profile para ese propósito antes del primer uso: export EDITOR='mate -w' Y cree un enlace simbólico en su carpeta ~/bin: ln -s /Applications/TextMate.app/Contents/Resources/mate ~/bin/mate *La información anterior se aplica a los usuarios de Mac OS X

Respuestas (3)

Primero debe habilitar Apache en el panel de uso compartido. Marque "Compartir web" y su servidor web se está ejecutando.

Tenga en cuenta que, desde Mountain Lion , el uso compartido web se eliminó del panel de preferencias Compartir, pero Apache todavía está incluido. Verifique esta respuesta para controlar Apache en Mountain Lion.

Habilitar uso compartido web

Para activar PHP, deberá editar /etc/apache2/httpd.confen Terminal.app. Esto requiere credenciales de root. nanoes un editor de línea de comandos muy accesible si no se siente cómodo con vim.

sudo nano /etc/apache2/httpd.conf

Encuentra la línea (puedes presionar ctrl+ Wpara comenzar a buscar en nano):

#LoadModule php5_module libexec/apache2/libphp5.so

y descoméntalo. A continuación, busque la línea

#Include /private/etc/apache2/extra/httpd-vhosts.conf

y descomente eso también para habilitar el soporte de hosts virtuales.

Guarde el archivo y salga nanopresionando ctrl+ X, luego confirme los cambios presionando Y(es), luego enter.

Ahora puede editar sus hosts virtuales en el archivo/etc/apache2/extra/httpd-vhosts.conf

sudo nano /etc/apache2/extra/httpd-vhosts.conf

Es importante tener en cuenta que el primer host definido será el host predeterminado para los nombres de host no calificados. Para resolver nombres de host adicionales, además de localhostrecomendarlos codificarlos en formato /etc/hosts.

Para instalar MySQL, descargue el instalador del sitio web de MySQL (el instalador de 64 bits debería estar bien). Siga las instrucciones para instalarlo.

Finalmente, para configurar PHP para MySQL, copie el valor predeterminado php.ini:

sudo cp /etc/php.ini.default /etc/php.ini

Ahora puede editar /etc/php.ini(nuevamente se requiere acceso de root) y reemplazar cualquier referencia /var/mysql/mysql.sockcon /tmp/mysql.sock(la ubicación predeterminada del socket MySQL después de ejecutar el instalador). Probablemente hay alrededor de 3 referencias a ese camino.

Finalmente, reinicie Apache para que la nueva configuración surta efecto:

sudo apachectl restart

Alternativamente, puede reiniciar Apache apagándolo y encendiéndolo de nuevo en el panel de uso compartido.

Hecho.

Le aconsejaría que nunca sugiera ningún tipo de editor de texto de terminal, solo use textedit.app en el comando en lugar de nano, porque los editores de texto de terminal son simplemente bárbaros.
Nano es bastante fácil de usar, en mi opinión, y es realmente molesto tratar de editar algo con privilegios de root desde la GUI.
@XAleXOwnZX: Lo siento, pero es un mal consejo. En todo caso, le resultará casi imposible editar estos archivos en TextEdit.app debido a la falta de privilegios, como también señaló NReilingh. Además, no es descabellado esperar algún conocimiento de la consola por parte de cualquier (aspirante) desarrollador web.
generalmente funciona si lo haces
¿Probaste eso @XAleXOwnZX?
sí, pero podría ser porque le di permisos de root a mi cuenta xD, lo intentaré más tarde
@XAleXOwnZX: Con el debido respeto, podría decirse que es el peor consejo que he visto en una propiedad de Stack Exchange. Estoy de acuerdo en que un editor de texto GUI es probablemente un mejor enfoque para las personas que no son programadores o que no tienen mucha experiencia en Unix, sin embargo, TextEdit es la aplicación incorrecta para recomendar usar simplemente porque por defecto es una fuente de ancho variable y rica. texto. Esto puede causar todo tipo de problemas (más allá de la simple pesadilla de usabilidad de escribir código en ancho variable) que serán extremadamente difíciles o imposibles de depurar para esta persona.
bueno, obviamente, cambiaría al modo de texto sin formato ... (si no lo estuviera ya, ya que textedit cambia a texto sin formato al abrir .txts regulares)
Creo que esto es mucho más fácil en Lion Server. En estos días, el precio de eso es razonable incluso para proyectos de pasatiempos.
@ThorbjørnRavnAndersen depende del propósito. Para un cuadro de desarrollo web, encuentro que OS X Server es excesivo, y aún tendría que lidiar con los archivos de configuración para lograr todo de todos modos.
En qué universo es un editor de terminal "bárbaro", en mi humilde opinión, TextEdit.app es bárbaro. Esperaría (irónicamente) algunas respuestas de sabelotodo vi(m) o sed, solo esperaría TextEdit de un usuario de Windows.

Solo para que conste, una alternativa a MAMP es WebStart que facilita la administración de un servidor web Apache 2 profesional en Mac OS X 10.7 Lion.

Puede encontrar un buen tutorial aquí para habilitar también phpmyadmin y demás sin usar mamp

Las respuestas en Ask Different deben ser algo más que un enlace. Está bien incluir un enlace, pero resúmalo o extráigalo en la respuesta. La idea es hacer que la respuesta sea independiente.