Hace poco tiempo, escribí acerca de cómo montar un entorno de desarrollo completo bajo MacOs. El motivo de escribirlo, fue por que bajo mi criterio, hay mucho desconocimiento sobre los programas existentes en Mac para desarrollar páginas web, algunos gratuitos, otros bastante asequibles.
En dicho artículo, comentaba todos los programas que uso a diario en mi flujo de trabajo, así como alguna alternativa. La parte más importante de dicho tutorial, la de montar un servidor web, la pasé bastante por encima, ya que no era el propósito de dicho artículo. En este, entraremos un poco más en detalle sobre como instalar desde cero MAMP (Apache, MySQL y PHP). Y creedme, es bastante fácil.
MAMP no es más que una recopilación de software (en realidad son servicios), que instalará de forma rápida. Si nos dedicamos (o queremos hacerlo) o simplemente por hobbie, al desarrollo web, tener un servidor web montado en casa o en la oficina va a acelerar todo el proceso de manera enorme. Así que, manos a la obra.
MAMP está formado por:
Las dos primeras aplicaciones, corren como servicios del sistema. Es decir, una vez arrancados, no veremos nada, simplemente están a la escucha, esperando que les llegue una petición. El tercero, será el encargado de realizar tareas de lado del servidor, generar una respuesta, y mandársela al cliente que ha realizado la petición. Imaginaros que entráis en una página donde tenéis que introducir vuestro usuario y contraseña. Apache sería el encargado de mandaros la página que solicita el usuario y contraseña. Una vez los rellenemos, son devueltos de nuevo al servidor web, que mediante lo que hayamos programado en PHP, consultaremos la base de datos (mysql) y permitiremos o denegaremos la entrada.
Por ejemplo, el sistema de blogs mas usado del mundo (wordpress) usa estos tres sistemas. Al igual que el CMS más extendido (joomla), o que uno de los paneles de administración de servidores (Plesk).
Bueno, que me enrollo, y seguro que si queréis instalar MAMP es por que todo lo de antes ya lo sabéis. Vamos a su página oficial, y descargamos la versión gratuita (a fecha de escribir este tutorial, se incluyen la gratuita y la profesional, pero tranquilos, usaremos sólo la gratuita). Ahora vamos a por un café, por que son 160 megas….

Una vez descargado, moveremos la versión gratuita a nuestra carpeta de aplicaciones…. y ya está instalado. Así de simple, Apache, PHP, y MySQL.
Por defecto, Apache escucha en el puerto 80, y MySQL en el 3306. En los servicios que instala MAMP, estos puertos están cambiados. Apache está en el puerto 8888 y MySQL en el 8889. Esto es un engorro, ya que cuando queramos entrar a nuestras webs, lo tendremos que hacer mediante http://localhost:8888 y conectar a la base de datos por el 8889. Vamos a ponerlo como en cualquier sitio, en sus puertos de toda la vida. Tenemos dos opciones:

Vamos a nuestra carpeta de aplicaciones, entramos en el directorio MAMP y ejecutamos el fichero MAMP.
Se nos abrirá un pequeño panel de configuración en el que podremos iniciar los servicios, detenerlos, o cambiar la configuración (opción “preferencias”). Pinchamos en preferencias, vamos a la pestaña puertos, y pinchamos sobre “Usar los puertos por defecto de Apache y MySQL“. Ya de paso, vamos a la pestaña Iniciar/Detener, y desactivamos la cuarta opción “Abrir página de inicio al arrancar” (yo al menos, la encuentro engorrosa, pero esto es al gusto de cada uno….). Y ya, listo.

Nos dirigimos a Aplicaciones/MAMP/conf/Apache, y en el fichero httpd.conf podemos cambiar el puerto en el que escucha apache (recordamos, por defecto en MAMP 8888). Una vez guardado el fichero, será necesario reiniciar el servicio.
Pero pocas. Primero, en la carpeta Aplicaciones/MAMP tenemos un fichero que nos va a servir para agregarlo al dashboard como widget. Para mí, es supercómodo abrir el dashboard, pinchar en el widget del MAMP y ya está todo arrancado. La otra opción es poner en el dock la aplicación de MAMP que hemos ejecutado antes, de forma que la tengamos siempre a mano (en este caso, quizá os resulte útil desmarcar la opción “Detener Servidores al para MAMP” en Iniciar/Detener).
Por defecto, Apache va a mirar el contenido de Aplicaciones/MAMP/htdocs. Supongamos que queremos que también sirva las páginas que tenemos en otra carpeta de nuestro disco duro, o mejor aún, en una carpeta de nuestro dropbox (no me cansaré de decirlo, si no lo usas ya, instalalo). En mi caso, con el siguiente comando
ln -s /Users/jesus/Dropbox/webs /Aplications/MAMP/htdocs/dropbox
Obviamente, tendréis que cambiar la orden y adecuarlas a vuestras rutas.
Con eso, cuando acceso a http://localhost/dropbox veo todas las webs que tengo en mi dropbox (lo tengo así en casa, en la oficina, y en el portatil, de forma que modifique lo que modifique, lo tengo en todos los sitios actualizado).
Otra forma de hacer esto, es mediantes VHosts (Hosts Virtuales, Virtual Hosts). Esto require crear una entrada en nuestro archivo hosts local, y tocar el archivo de configuración de apache (httpd.conf). Pero esto, ya lo veremos más adelante, si no, de que voy a escribir?
Para realizar estas pruebas, he usado Snow Leopard con las últimas actualizaciones disponibles. No obstante, es posible realizar todo lo anterior en cualquier sistema Linux, y también en windows (ver WAMP o XAAMP)
Espero vuestros comentarios, dudas y sugerencias.
Este blog es un blog personal. En el postearé manuales, recursos, cualquier cosa que me parezca interesante sobre diseño web, programación web, maquetación, photoshop, y algo de linux (ubuntu y linux mint). Si lo deseas, puedes ponerte en contacto conmigo para cualquier sugerencia, critica, agradeciminto, cualquier cosa referente a este blog.
Code Igniter: Trabajando con Vistas. | Blog and Web
July 22nd, 2010 at 4:46 am
[...] ¿qué es una vista?Las vistas se almacenarán en nuestro directorio /application/views de nuestro servidor local. Las vistas son, básicamente, código html. Vamos a hacer un ejemplo, que simplemente llame a la [...]
Como montar un servidor web con Apache, PHP y MySQL bajo Mac
July 25th, 2010 at 11:30 am
[...] Como montar un servidor web con Apache, PHP y MySQL bajo Mac blog.jesusyepes.com/administracion-de-sistemas/el-servidor-w… por djchux hace 2 segundos [...]
Roota
July 28th, 2010 at 11:55 am
Estooo, no. Usar un monstruo hiperpesado como OSX para montar un servidor web no me parece a mi la perfección precisamente. Máxime existiendo otros sistemas que consumen 100 veces menos recursos, mas seguros y donde instalar y configurar los mismas aplicaciones es mucho mas fácil. Ej: Debian.
Hace falta ser muy muy fanboy de Mac para escribir semejante titulo.
admin
July 28th, 2010 at 12:51 pm
Buenas Roota, gracias por tu comentario.
Ahora mismo, gestiono 4 servidores dedicados para temas de alojamiento, 3 usan CentOS, el otro ubuntu.
Para un desarrollador web independiente, que usa mac desde casa (o trabajo), el servidor web perfecto es este, por que usas lo que ya tienes, y por que va bien.
En ningún sitio del artículo pone que va enfocado a servidores en producción y a gestionar los dominios que tengas. De hecho, temas básicos para máquinas que alojan dominios, como DNS y Correo ni siquiera los menciono.