miércoles, marzo 07, 2012

Instalar xampp en Ubuntu (servidor web y bases de datos)

Instalar xampp en Ubuntu (servidor web y bases de datos)

Xampp es un servidor independiente es software libre, en cual podemos montra un servidor propio o simplemente usarlo para hacer un testeo de nuestras paginas web, bases de datos, para desarrollar aplicaciones en php, con conexión a base de datos sql (LAMPP= Linux + Apache + MySQL + PHP + Perl)

Apache no es facil de instalar y mucho menos para novatos recien llegados al mundo de los servidores, pues bien xampp te da esa posibilidad de instarlate apache de una forma sencilla

que contiene MySQL, PHP y Perl. Es realmente simple de instalar y usar, pero hay que tener en cuenta que no está desarrollado para su uso en producción.

Tiene licencia GNU y es multiplataforma, teniendo en estos momentos versiones para: Linux, Win2, Mac Os X y Solaris.

Página oficial: http://www.apachefriends.org/es/xampp.html

Nos descargamos la ultima version de xampp de la web oficial en este caso la ultima version es la XAMPP Linux 1.7.7

Despues de guardar el archivo en nuestra capeta abrimos la terminal y tecleamos

sudo tar xvfz xampp-linux-1.7.77.tar.gz -C /opt

Nota: si hay una version superior de xampp a la que yo estoy usando como ejemplo por ende cambia el nombre toma en cuenta eso al teclear los comandos si tienes el archivo de xampp en otro directorio usa el comdando cd para accesar al la carpeta y el comando ls para ver el contenido del la carpeta y serciorarte de que se encuentra ahi

Y ya tenemos instalado XAMPP en /opt/lampp.
Nota: Testeado en Ubuntu 11.04 y 10.10, (32bits y 64bits), sin problemas.

Desinstalación: Lo podemos desinstalar con:

sudo rm -rf /opt/lampp 

Permisos al directorio /opt/lampp/htdocs

(aquí es donde se almacenan los archivos de las páginas webs)

1º Damos permisos para poder modificar el directorio /opt/htdocs, con el comando:

sudo chmod a+w /opt/lampp/htdocs

2º Creamos un enlace simbólico entre el directorio y una ubicación en nuestra carpeta personal, por ejemplo: /home/usuario/Webs, para de esta forma tener nuestros proyectos en la carpeta personal, con el comando:

sudo ln -s /opt/lampp/htdocs /home/usuario/Webs

Nota: donde pone “usuario” poner el nombre de vuestro usuario.

Comandos para utilizar Xampp:

Iniciar xampp:

sudo /opt/lampp/lampp start

Reiniciar xampp:

sudo /opt/lampp/lampp restart

Detener xampp:

sudo /opt/lampp/lampp stop

Podemos probar XAMPP arrancándolo con el comando:

/opt/lampp/lampp start

Y si todo ha ido bien, la terminal nos deberá responder algo similar a:

Starting XAMPP for Linux 1.7.4... XAMPP: Starting Apache with SSL (and PHP5)... XAMPP: Starting MySQL... XAMPP: Starting ProFTPD... XAMPP for Linux started.

Para desarrollar nuestras aplicaciones, debemos de realizar siempre el anterior paso para arrancar Xampp, pero existe una gui (interfaz gráfica que nos permite arrancar de una forma fácil todos los servicios o uno por uno. Es el llamado Panel de Control de Xampp y se abre con el siguiente comando:

sudo /opt/lampp/share/xampp-control-panel/xampp-control-panel

Si os sale el siguiente error al lanzarlo desde la terminal:

Error importing pygtk2 and pygtk2-libglade

La solución es instalar la libreria correspondiente:

sudo apt-get install python-glade2

Pantallazo-XAMPP Control Panel

Pantallazo-XAMPP Control Panel

CREAR LANZADOR EN EL MENU INICIO

Para que nos aparezca la aplicación en el menú de “Aplicaciones – Otros” de Ubuntu 10.10 y anteriores y en el Dash Aplicaciones de Ubuntu 11.04 creamos un archivo.desktop en /usr/share/applications/, ejecutando en un terminal:

sudo gedit /usr/share/applications/xampp-control-panel.desktop

Pegar el siguiente código en el archivo:

[Desktop Entry] Comment=Start/Stop XAMPP Name=XAMPP Control Panel Exec=gksudo python /opt/lampp/share/xampp-control-panel/xampp-control-panel.py Icon[en_CA]=/opt/lampp/xampp.png Encoding=UTF-8 Terminal=false Name[en_CA]=XAMPP Control Panel Comment[en_CA]=Start/Stop XAMPP Type=Application Icon=/opt/lampp/xampp.png

Guardar y cerrar.

Nota: Respecto a las líneas “icons”, he colocado el icono que me he descargado desde la página web, lo he colocado en /opt/lampp y lo he llamado “xampp.png”

Ya podemos arrancarlo escribiendo en el Dash de Unity o desde el menú aplicaciones – otras, nos pedirá la contraseña y nos saldrá el Administrador gráfico de Xampp, y podemos arrancar Xampp al completo o los servicios que necesitemos.

Sólo queda probarlo para ver que corre perfectamente. Abrimos nuestro navegador y escribimos en la barra de direcciones:

Nos debe de salir la pantalla de bienvenida a XAMPP:

Pantallazo-XAMPP - Mozilla Firefox

Pantallazo-XAMPP - Mozilla Firefox

Ahora probamos “phpmyadmin” escribiendo en la barra de direcciones:
http://localhost/phpmyadmin

Y veremos phpMyadmin donde podremos crear nuestras bases de datos, gestionarlas y demás:

Ya tenemos nuestro servidor local para programar en php con bases de datos.

Pantallazo-localhost - localhost - phpMyAdmin 3.3.9 - Mozilla Firefox

Pantallazo-localhost - localhost - phpMyAdmin 3.3.9 - Mozilla Firefox

Crear archivos php y ver su resultado en el navegador:

Los “archivos.php” deben ser guardados en el directorio: /opt/lampp/htdocs (tendremos acceso también a este directorio mediante el enlace que hemos creado con anterioridad en nuestra carpeta personal: /home/usuario/Webs/htdocs).

Y para ver el resultado de un archivo llamado “prueba.php”, por ejemplo, escribimos en la barra de dirección del navegador la siguiente url:

Si creamos una carpeta y dentro un archivo.php, por ejemplo: /opt/lampp/htdocs/carpeta/archivo.php veremos el resultado en el navegador, escribiendo en él:

Seguridad

Como mencionamos antes, XAMPP no es para uso en producción, sólo para un entorno de desarrollo local. XAMPP está configurado lo más abierto posible, permitiendo que el desarrollador trabaje sin trabas. Para entornos de desarrollo esto es genial, pero en un entorno de producción es fatal.

Lista de seguridad que falta en XAMPP:

El administrador de MySQL (root) no tiene contraseña.
El demonio de MySQL es accesible a través de la red.
ProFTPD usa la contraseña “lampp” para el usuario “nobody”.
PhpMyAdmin es accesible a través de la red.
MySQL y Apache se ejecuta bajo el mismo usuario (nobody).

Si lo vamos a utilizar a nivel local no hay ningún problema, si queremos podemos solucionar la mayoría de las debilidades de seguridad ejecutando el siguiente comando:

sudo /opt/lampp/lampp security

Se inicia el control de seguridad, ponemos nuestras contraseñas y hacemos nuestra instalación de XAMPP muy segura.

A la hora de abrir http://localhost/phpmyadmin :
- La primera contraseña que nos pide es para proteger las páginas y ejemplos de Xampp y a la hora de logearse el usuario es lampp y escribimos la contraseña que hayamos puesto.
- El siguiente logeo es para PhpMyAdmin y es el más importante protegiendo la base de datos (MySQL), donde el usuario es root y la contraseña, la que hayamos puesto. Consejo: utilizad la misma contraseña que la de vuestro usuario de ubuntu.