apache2 y MacOS, servidor web en un click

Cuando uno piensa en servidores web lo hace irremediablemente en apache…

Cuando piensas en mac creo que el término es… sencillo

La mezcla de ámbas termina en una busqueda que ofrece soluciones one-click tipo mamp o xampp, versátiles y rápidas pero quizá inseguras por la ausencia de automatización de las actualizaciones y poco operativas por la imposibilidad de modificar versiones de los productos que nos ofrecen ya empaquetados.

El caso es que Mac OS ya tiene apache instalado por defecto y solamente hace falta habilitarlo.

Preferencias del sistema > Compartir > Habilitar Compartir Web

La pantalla que habilita Compartir Web muestra información acerca de dónde podemos guardar las páginas web, por defecto están configurados dos rutas que resuelven a diferentes urls:

/Library/Webserver/Documents >  http://localhost

Y la página web que tenga cada usuario en la ruta

/Users/usuario/Sites/ >  http://localhost/~usuario

Las rutas son modificables cambiando el archivo httpd.conf situado en:

/etc/apache2/httpd.conf

Dentro del cual se establece que:

DocumentRoot "/Library/Webserver/Documents"

Modificando esta ruta y reiniciando el servicio recargará la nueva ruta que especifiquemos.

Pero no es lo único que podemos/debemos modificar en este archivo, php5 viene deshabilitado por defecto así que hay que descomentar la línea (borrar el # que hay al principio de la línea) que carga el módulo de php dentro de este mismo archivo.

#LoadModule php5_module        libexec/apache2/libphp5.so

Para editar los archivos se puede usar emacs, vi o vim, siendo este útimo el a mi parecer más sencillo…

computer:~ user$ sudo vim /private/etc/apache2/httpd.conf

buscamos la línea moviendonos con las flechas, se pasa a edición calcando la tecla i, se modifica el fichero y por último se guarda saliendo de edición con la tecla ESC, introduciendo :wq, los dos puntos entran en modo comando, w escribe, q sale. Si devuelve algún error del tipo «no se puede grabar, archivo de solo lectura», utilizar la misma combinación añadiendo ! tal que :wq!, forzará el guardado y la salida.

Tras estas modificaciones debemos reiniciar el servicio (deshabilitar y habilitar el servicio desde Preferencias del sistema > Compartir ha sido la única forma que me ha funcionado, las llamadas desde la terminal a apachectl siempre me han devuelto errores que no permiten el reinicio «seguro»)

Tras esto ya tenemos funcionando el servidor web incluído en MacOS (hablamos de 10.6)

En el caso de querer acceder a nuestra web personal desde internet hay que abir un puerto en el router (tipicamente 8080), direccionarlo hacia el puerto 80 del mac y por último acceder desde la ip pública o algún tipo de direccionamiento dinámico (dyndnsnoip o similares) mediante el formato IP:PUERTO

Si los pasos no funcionan o las ubicaciones son diferentes tito Google o los comentarios tienen la respuesta =)


LINKS DE REFERENCIA

TO-DO

  • MySQL, phpmyadmin.
  • SSL

·n·

Deja un comentario