Hace unas semanas, The Rocket Yard publicó un artículo en el que se detallaban los numerosos servicios que se eliminarán de macOS Server en un futuro próximo. Hoy hablaré de cómo recuperar uno de esos servicios, el alojamiento web, utilizando tanto el servidor web Apache integrado en macOS como la suite completa MAMP.

Servidor web Apache
La mayoría de los usuarios de Mac no se dan cuenta, pero macOS viene con su propio servidor web integrado. Apache es un servidor web de código abierto que ha estado disponible desde 1995 y, en 2016, era el motor detrás del 46% de todos los sitios web y del 43% del millón de sitios web más importantes en términos de tráfico.

Tener un servidor web integrado en macOS es perfecto para aquellos que quieren compartir información en un pequeño grupo de trabajo o configurar y probar sitios en un servidor web de desarrollo antes de desplegarlos en un servidor de Internet. Estas instrucciones muestran cómo configurar el servidor Apache en macOS High Sierra. Necesitarás tener algún conocimiento de la aplicación Terminal y de cómo ejecutar programas de línea de comandos, una comprensión de los servidores web y una familiaridad con el editor vi.

Para empezar, editamos el archivo de configuración de Apache como root:

sudo vi /etc/apache2/httpd.conf

Un servidor web es relativamente inútil sin un lenguaje de scripting del lado del servidor con el que manejar las interacciones; los lenguajes más populares son PHP, Perl y Python. En este ejemplo, habilitaremos PHP y Perl. Para ello, tendrá que descomentar la línea 176 del archivo de configuración. En el editor vi, puedes hacerlo fácilmente escribiendo 176G para ir directamente a la línea 176. A continuación, escriba una x sobre el # al principio de la siguiente línea para borrar el marcador de comentario #:

#LoadModule php7_module libexec/apache2/libphp7.so

Queremos hacer lo mismo para poder ejecutar scripts Perl, que está en la línea 177 del archivo de configuración. Use su tecla de flecha para bajar al principio de la siguiente línea, luego escriba la x sobre el # para borrar el marcador de comentario. ¡El archivo de configuración debería entonces tener un aspecto como el siguiente alrededor de la línea 176 (vea la captura de pantalla más abajo):

Edición del archivo de configuración de Apache en el editor vi

Para guardar sus cambios en el editor, escriba :w!

Todavía tenemos que habilitar los sitios web personales descomentando la línea 173, así que escribe 173G y pulsa retorno, luego escribe una x sobre el # para borrarlo. Lo mismo debe hacerse con la línea 513 del archivo – escriba 513G y presione retorno, luego escriba una x sobre el # para borrarlo. Ahora guardaremos estos dos cambios finales y saldremos del editor escribiendo ZZ.

El último comando acaba de habilitar un archivo llamado http-userdir.conf, y ahora necesitamos editarlo: En el Terminal, introduzca:

sudo vi /etc/apache2/extra/httpd-userdir.conf

En este archivo de configuración, tenemos que descomentar la línea 16. Escriba 16G y presione retorno, luego escriba una x sobre el # para borrarlo. Guarde y salga escribiendo 16G.

Hasta Mac OS X Lion, era posible compartir sitios web con un grupo de trabajo local y crear sitios web personales con un clic; para publicar páginas web, basta con poner los archivos html en una carpeta Sitios. Ahora hay que hacer mucho más trabajo. Vamos a crear manualmente una carpeta de Sitios en el Terminal y hacer un pequeño archivo de prueba para saber que nuestro servidor web está funcionando.

Introduce los siguientes comandos:

mkdir ~/Sites

echo «<html><body><h1>Bienvenido a mi sitio</h1></body></html>» > ~/Sites/index.html.es

A continuación, tenemos que asegurarnos de que tenemos un archivo de configuración de usuario. Para crear uno, escriba en

sudo vi /etc/apache2/users/<su nombre corto de usuario>.conf

Donde <su nombre corto de usuario> es su nombre corto de usuario Unix. ¿No sabe cuál es ese nombre? Mira en la parte superior de la ventana de la Terminal y verás un nombre en la lista – ese es el nombre corto de usuario. En mi caso, es stevensande, así que introduciría

sudo vi/etc/apache2/users/stevensande.conf (¡no use esto para SU archivo de configuración!)

En ese archivo de configuración queremos introducir lo siguiente (cortar y pegar en vi funciona):

<Directorio «/Users/<su nombre de usuario corto>/Sites/»>
AddLanguage es .es
AddHandler perl-script .pl
PerlHandler ModPerl::Registry
Options Indexes MultiViews FollowSymLinks ExecCGI
AllowOverride None
Require host localhost
</Directory>

Una vez más, recuerde sustituir <su nombre corto de usuario> por su nombre corto de usuario. Escribe ZZ para guardar el nuevo archivo de configuración y sal del editor.

Si has llegado hasta aquí… ¡felicidades! Ahora vamos a comprobar nuestra configuración de Apache ejecutando el siguiente comando en el Terminal:

apachectl configtest

Probablemente obtendrá un mensaje de advertencia que dice «http: Could not reliably determine the server’s full qualified domain name» (http: no se pudo determinar el nombre de dominio completo del servidor) junto con la forma de resolver ese problema; como esto es sólo para un servidor web local, ignore esa advertencia – lo que sí quiere ver es la última línea: Sintaxis OK.

Si todo está bien hasta este punto, está listo para iniciar Apache. Si alguna de las sintaxis del archivo de configuración es incorrecta, recibirá advertencias sobre lo que hay que arreglar.

Por fin, estamos listos para lanzar el servicio httpd de Apache:

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

Para ver nuestra página web de una línea, inicie Safari o su navegador favorito e introduzca http://localhost/

Debería ver:

¡Funciona!
Para ver su directorio principal de usuario, introduzca http://localhost/~<su nombre corto de usuario>, sustituyendo una vez más <su nombre corto de usuario> por su nombre corto de usuario Unix. Debería decir:

Bienvenido a mi sitio
Si decide apagar el servicio Apache, hay un simple comando de Terminal de una línea para hacerlo:

sudo /usr/sbin/apachectl stop

Haciendo la vida más fácil con MAMP
Eso fue mucho trabajo para poner las cosas en marcha, ¿no? ¡Hay una manera mucho más fácil de configurar un servidor de pruebas local! Durante bastante tiempo, los desarrolladores se han dado cuenta de que empaquetar Apache, MySQL (un servidor de bases de datos) y PHP/Python/Perl era la mejor manera de conseguir un servidor web muy potente. Añade «Mac» al principio de esto, y tendrás MAMP – Mac, Apache, MySQL, y PHP/Python/Perl. Las distribuciones «AMP» (LAMP para Linux, WAMP para Windows, MAMP para Mac) son la columna vertebral de la popularísima plataforma WordPress, así que si quieres un entorno de desarrollo de WordPress muy completo en tu Mac, has llegado al lugar adecuado.

MAMP viene en dos variedades; la solución MAMP gratuita para un servidor web personal y MAMP Pro (59 dólares), que añade servicios adicionales como correo electrónico, DNS dinámico y más. Para este post, instalaremos y configuraremos el MAMP gratuito.

1) Descarga MAMP desde el sitio web de MAMP

2) Abre el archivo .pkg y sigue las instrucciones de instalación para instalar MAMP en tu Mac

3) Una vez completada la instalación, encontrarás dos carpetas en tu carpeta de Aplicaciones – una para MAMP, y otra que es una prueba gratuita de 14 días para MAMP Pro. Abre la carpeta llamada MAMP y lanza la aplicación MAMP. Verás algo parecido a esta captura de pantalla:

La interfaz de inicio de MAMP

4) Haz clic en el botón «Iniciar servidores».

MAMP iniciará los servidores Apache y MySQL, y a continuación lanzará una página web que confirma que su instalación de MAMP está completa (vea la captura de pantalla de abajo):

(La página de bienvenida de MAMP, indicando que todos los servicios están funcionando.)

El enlace «Mi sitio web» muestra una página vacía, pero puedes cambiarlo colocando un archivo index.html en la carpeta htdocs que se encuentra en la carpeta MAMP. Es fácil cambiar el directorio raíz del documento yendo a MAMP > Preferencias > Servidor Web.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.