Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Es frecuente que se identifique a primera vista el mundo del software libre con Linux.
Eso provoca que muchas veces se ignoren las herramientas que permiten a Linux
convertirse en una gran herramienta de desarrollo de software, especialmente de
aplicaciones web. Existen varios casos en los que un producto pasa de ser una
curiosidad a una solucin adecuada para la empresa, como ya ha sucedido con
Sendmail o Kerberos. Esto es lo que ha sucedido con la solucin para servicios web
llamada LAMP.
LAMP est considerada como una de las mejores herramientas disponibles para
que cualquier organizacin o individuo pueda emplear un servidor web verstil y
potente. Aunque creados por separado, cada una de las tecnologas que lo forman
dispone de una serie de caractersticas comunes. Especialmente interesante es el
hecho que estos cuatro productos pueden funcionar en una amplia gama de
hardware, con requerimientos relativamente pequeos sin perder estabilidad. Esto
ha convertido a LAMP en la alternativa ms adecuada para pequeas y medianas
empresas. Tambin Ciberaula emplea tecnologa LAMP.
Sin embargo, tenemos tambin una serie de desventajas que deben considerarse:
Software libre
Todos los elementos que forman LAMP son software libre, de modo que disfrutan
de las siguientes ventajas propias del mismo:
Linux
Est basado en los estndares Unix, y surgi a principios de los 90, a partir de las
inquietudes de Linus Torvalds por mejorar y ampliar Minix (otra implementacin
gratuita de Unix desarrollada por Andy Tanenbaum, dirigida al mbito educativo).
Desde entonces, ha ido incrementndose de forma espectacular el nmero de
desarrolladores desinteresados que se han implicado en su desarrollo a lo largo y
ancho del mundo.
Apache
Apache es el servidor web por excelencia, con algo ms de un 60% de los servidores
de internet confiando en l. Entre sus caractersticas ms sobresalientes estn:
Este potente y famoso servidor se basa en el pionero NCSA server, y surgi a partir
de diferentes ampliaciones y parches para el mismo (de ahi su nombre, derivacin
de 'A patchy server'), cuyo desarrollo se estanc a mediados de 1994. Un grupo de
administradores web pusieron en marcha una lista de correo y fundaron el Apache
Group. Al ao, Apache era el nmero 1 en la lista de Netcraft.
MySQL
La administracin y gestin de la informacin es uno de los puntos clave del xito
en cualquier entidad empresarial. La informtica aporta la tecnologa que permite
satisfacer la necesidad de control de esta informacin, pero las empresas no se
conforman trabajando con aplicaciones o programas que amontonen la informacin
de forma catica. Los datos deben organizarse de acuerdo a un proceso previo que
comprende el anlisis y diseo del modelo de datos, as como la eleccin y posterior
configuracin del sistema que soportar nuestra base de datos.
PHP
Entre las muchas cosas que distinguen la web de los restantes medios de
comunicacin, est la capacidad de interaccin. En este mbito, las capacidades
del HTML, Javascript y dems tecnologas de cliente son bastante reducidas. Una
pgina realmente profesional no puede limitarse a mostrar informacin y disponer
de formularios para conectarse con los usuarios. Esta necesidad se comprendi
muy pronto y provoc el nacimiento del protocolo CGI que permite a los
navegadores comunicarse con programas alojados en el servidor.
PHP es una tecnologa con mucho futuro, con cada vez ms presencia en Internet.
Existen muchsimas pginas a lo largo y ancho del mundo que lo utilizan, como
Libertad Digital (peridico digital), SourceForge (sistema de albergue de proyectos
de software libre), El Mundo (edicin digital de un peridico en papel), Gran Avenida
(Publicacin de ocio y cultura y albergue de pginas personales) o Sport Area
(tienda virtual). Por supuesto hay muchos ms; en cuanto se navega un poco la
extensin .php suena a conocida.
El mundo del software libre nos brinda la oportunidad de realizar todo esto usando
tecnologas de ltima generacin ampliamente difundidas en la red y manera
totalmente gratuita.
Este artculo se dedida a explicar desde cero cmo instalar un servidor en tu
Ubuntu (yo estoy utilizando la versin LTS Ubuntu 10.04), aadirle los mdulos
necesarios para ejecutar PHP e instalar y configurar un sistema gestor de bases
de datos, MySQL. Este ser el primer paso para disponer en tu equipo de un
servidor LAMP completamente funcional (LAMP se refiere a
Linux+Apache+MySQL+PHP), es decir, montar un servidor Web que haga
consultas a una base de datos en MySQL y est alojado en un servidor Apache
(bsicamente, la configuracin ms ampliamente usada en el mundo).
En posteriores artculos te indicaremos como configurar en el servidor un dominio
gratuito con IP dinmica y finalmente cmo instalar un CMS (Content Management
System) en l para que compruebes sus posibilidades. As tendrs tu propia web
personal con tu propio dominio, de manera totalmente gratuita y usando software
libre, un sistema en el que podrs publicar noticias, imgenes u otros archivos y
Si en cambio responde
httpd:/usr/local/bin/httpd
Apache si est instalado en tu equipo y el ejecutable se encuentra en
/usr/local/bin/httpd
Para instalarlo simplemente ejecuta en la consola o terminal:
sudo apt-get install apache2
Esto instalar Apache2 y todos los paquetes necesarios para su funcionamiento:
10
Una vez finalizada la instalacin, puedes comprobar la versin que has instalado
de Apache ejecutando en la consola
apache2 -v
Para probar en modo grfico que, en efecto, Apache est en funcionamiento
acude a Firefox e introduce en el campo Direccin del navegador
http://localhost o bien http://127.0.01
Debe aparecer una pgina especfica indicndote que Apache se est ejecutando:
11
Datos de inters
12
13
Nota.
No confundas este usuario root de MySQL con el usuario root de Linux.
El proceso finaliza en breves segundos. MySQL est instalado y en
funcionamiento:
14
Estatus MySQL sudo /etc/init.d/mysql status o bien sudo service mysql status
El archivo de configuracin de mysql se localiza en /etc/mysql/my.cnf. Recuerda
que si haces algn cambio en este archivo debes reiniciar el servicio MySQL.
Si quieres acceder a MySQL por medio de scripts remotos (es decir, no
albergados en tu propio servidor) debes editar el bind-address en
/etc/mysql/my.cnf y reemplazar el valor que trae por defecto (127.0.0.1) por tu
direccin IP.
15
Ahora es necesario reiniciar el servidor Apache para que tome los cambios de la
librera de PHP. Si no lo haces no funcionar PHP hasta que no reinicies el
servidor Apache. Por ello en la consola o terminal escribe el siguiente comando:
sudo /etc/init.d/apache2 restart
Para probar que todo va bien y que PHP funciona perfectamente crea un archivo
de nombre test.php con tu editor favorito, por ejemplo, gedit que incluya un
fragmento de cdigo PHP que pueda ser interpretado por dicho lenguaje de
interpretacin.
En la consola o terminal escribe:
sudo gedit /var/www/test.php
Se abrir as el editor de textos Gedit. Escribe en l lo siguiente:
<?php phpinfo(); ?>
16
17
18
El siguiente cuadro de dilogo nos pregunta por la clave que configuraste para el
usuario root de MySQL. Recuerda que es aquella que escribiste en su momento
en el Paso 3. Escrbela y pulsa la tecla Enter.
Finalmente, te pregunta la clave que quieres darle al usuario de administracin de
phpmyadmin. Escribe la clave que prefieras, si la dejas en blanco y presionas
Enter generar una clave aleatoria. Si escribes una clave, tendrs que volver a
escribirla a continuacin:
19
Para iniciar sesin en PHPMyAdmin debes escribir el nombre de usuario root (de
manera predeterminada, escribe root) y la clave de usuario root (aquella que
escribiste en el Paso 3). A medida que crees nuevos usuarios y bases de datos
podrs entrar con otros usuarios.
20
21