Es de todos conocidos el paradigma de programación web LAMP, acrónimo de Linux, Apache, MySQL y PHP/Perl/Python. Y debido a su popularidad han surgido variantes como SAMP para Solaris o MAMP para Mac OS X. Con respecto a MAMP vamos a comentar que se ha referenciado a un proyecto “todo en uno”, aunque aquí se van a tratar los elementos por separado por ser el enfoque más general y aprovecha el software preinstalado en OS X (apache y php).
Como lenguaje de programación trataremos PHP, y concretamente el framework CakePHP para desarrollar rápidamente aplicaciones web.
OS X en su última versión a fecha de hoy, viene con el servidor Apache 2 instalado y que podemos iniciar a través de System Preferences/Sharing, donde se nos informa de los dos directorios preparados para servir contenidos web. Sin duda es engorroso estar limitado a sólo dos directorios, pues un desarrollador puede estar fácilmente involucrado en varios proyectos, por lo que vamos a presentar la configuración para tener un servidor virtual por nombre.
Se abre una sesión de consola y se edita el fichero de configuración de apache (/etc/apache2/httpd.conf) descomentando las líneas para habilitar soporte PHP y servidores virtuales:
LoadModule php5_module libexec/apache2/libphp5.so
# Virtual hosts
Include /private/etc/apache2/extra/httpd-vhosts.conf
A continuación se edita el fichero de configuración de servidores virtuales (httpd-vhosts.conf) y se inserta el siguiente código:
<VirtualHost *:80>
DocumentRoot "/Users/onestic/Sites/pastelito"
ServerName onestic.dev
ServerAlias www.onestic.dev
<Directory "/Users/onestic/Sites/pastelito/">
Options FollowSymLinks
AllowOverride All
</Directory>
</VirtualHost>
Finalmente se edita el fichero /etc/hosts para resolver correctamente el nuevo servidor virtual.
127.0.0.1 www.onestic.dev
Para comprobar que todo funciona correctamente se crea el fichero index.php en la ruta física del servidor virtual (ver etiqueta Directory) con el siguiente código:
<?php phpinfo(); ?>
Y si se visualiza una pantalla similar se ha configurado con éxito un servidor virtual que ejecuta código PHP.
Desarrollo web MAMP con CakePHP
Es de todos conocidos el paradigma de programación web LAMP, acrónimo de Linux, Apache, MySQL y PHP/Perl/Python. Y debido a su popularidad han surgido variantes como SAMP para Solaris o MAMP para Mac OS X. Con respecto a MAMP vamos a comentar que se ha referenciado a un proyecto “todo en uno”, aunque aquí se van a tratar los elementos por separado por ser el enfoque más general y aprovecha el software preinstalado en OS X (apache y php).
Como lenguaje de programación trataremos PHP, y concretamente el framework CakePHP para desarrollar rápidamente aplicaciones web.
OS X en su última versión a fecha de hoy, viene con el servidor Apache 2 instalado y que podemos iniciar a través de System Preferences/Sharing, donde se nos informa de los dos directorios preparados para servir contenidos web. Sin duda es engorroso estar limitado a sólo dos directorios, pues un desarrollador puede estar fácilmente involucrado en varios proyectos, por lo que vamos a presentar la configuración para tener un servidor virtual por nombre.
Se abre una sesión de consola y se edita el fichero de configuración de apache (/etc/apache2/httpd.conf) descomentando las líneas para habilitar soporte PHP y servidores virtuales:
LoadModule php5_module libexec/apache2/libphp5.so# Virtual hostsInclude /private/etc/apache2/extra/httpd-vhosts.conf
A continuación se edita el fichero de configuración de servidores virtuales (httpd-vhosts.conf) y se inserta el siguiente código:
<VirtualHost *:80>
DocumentRoot "/Users/onestic/Sites/pastelito"
ServerName onestic.dev
ServerAlias www.onestic.dev
<Directory "/Users/onestic/Sites/pastelito/">
Options FollowSymLinks
AllowOverride All
</Directory>
</VirtualHost>
Finalmente se edita el fichero /etc/hosts para resolver correctamente el nuevo servidor virtual.
127.0.0.1 www.onestic.devPara comprobar que todo funciona correctamente se crea el fichero index.php en la ruta física del servidor virtual (ver etiqueta Directory) con el siguiente código:
<?php phpinfo(); ?>Y si se visualiza una pantalla similar se ha configurado con éxito un servidor virtual que ejecuta código PHP.