sábado, 5 de diciembre de 2009

PHP - Crear un servidor local para pruebas.

A modo de comienzo explicaré los primeros pasos para instalar un servidor con Linux, Apache, MySQL PHP y PHPMyAdmin para iniciaros en el maravilloso mundo de un LAMP, siglas de los recursos anteriormente mencionados.

En esta serie de artículos de PHP explicaré lo básico para la gente que se vaya uniendo, pueda seguirlos. Más adelante cabaremos explicando temas más engorrosos como la seguridad en aplicaciones web y como ha de programarse de manera segura. Pero antes de todo esto, necesitaremos tener ciertos programas para probar nuestras aplicaciones, antes de servirlas a todo el mundo en un servidor abierto a Internet.

Una buena forma de tener un servidor local accesible sería abriendo el puerto 80, que explicaremos más adelante, en una guía sobre puertos y firewalls en linux. Si tenéis IP dinámica podréis crear un alias a un subdominio o dominio mediante el DynDns que presenté en este mismo blog.

A continuación explicaré el objetivo principal de las aplicaciones que mencioné arriba:
Para tener estos programas instalados existen 2 soluciones:

SOLUCIÓN 1: XAMPP
Esta solución sólo debería ser seguida por aquellos usuarios que quieran tener un servidor de pruebas local, no accesible para otros usuarios ya que muchas de las políticas de seguridad no vienen activadas. Por ejemplo, el usuario root de MySQL viene sin contraseña y esto puede acarrear graves problemas de seguridad.

Para instalarlo debemos ir a la web oficial de xampp y descargar la última versión o escribir el siguiente comando en la consola:
  • wget http://www.apachefriends.org/download.php?xampp-linux-1.7.2.tar.gz
Una vez descargado procederemos a extraerlo mediante el comando:
  • sudo tar xvfz xampp-linux-1.7.2.tar.gz -C /opt
Si lo hubiéramos descargado al usuario el comando debería quedar algo así:
  • sudo tar xvfz /home/tucuenta/Escritorio/xampp-linux-1.7.2.tar.gz -C /opt
Una vez hecho esto cada vez que queramos iniciar el servidor si estuviera parado para probar nuestros programas deberemos ejecutar:
  • sudo /opt/lampp/lampp start
El problema de esta solución es que cada vez que reiniciáramos, tendríamos que ejecutar este comando y resultaría bastante molesto, aunque es la opción idónea para ordenadores con pocos recursos que no sean servidores dedicados.
Esta versión también funciona en el sistema operativo privativo más utilizado en el mundo aunque no daré soporte para estos usuarios.

SOLUCIÓN 2: Instalar Apache PHP y MYSQL

Esta es la solución más robusta y que toda persona debería realizar para tener un servidor completo fiable y seguro.
El primer paso de todos es instalar el servidor web Apache para ello ejecutaremos el comando:
  • sudo apt-get install apache2
Después de instalar Apache, instalamos PHP:
  • sudo apt-get install php5
Ahora tocará instalar MySQL:
  • sudo apt-get install mysql-server
  • sudo apt-get install libapache2-mod-auth-mysql
  • sudo apt-get install php5-mysql
Ponemos la contraseña al usuario root de MySQL:
  • sudo mysqladmin -u miusuario password tucontraseña
Por último instalaremos PHPMyAdmin:
  • sudo apt-get install phpmyadmin
Si no tuviéramos geany instalado, lo instalamos para tener un entorno de desarrollo para PHP fácil y ligero:
  • sudo apt-get install geany

Ahora sólo nos queda reiniciar el servidor apache para que todos los módulos funcionen correctamente:

  • sudo /etc/init.d/apache2 restart
Felicidades ya tienes instalado Apache PHP MySQL y PHPMyAdmin. Ahora para acceder a tu servidor en tu navegador, escribe http://localhost/ o http://127.0.0.1/. Si el ordenador se encuentra en otro equipo deberás escribir la IP http://192.168.X.X

En próximas entregas empezaremos a hacer nuestros pinitos en PHP, ya que dispones de lo necesario para empezar a programar tus páginas webs dinámicas con PHP.

3 comentarios:

  1. Muy buen blog, me esta gustando bastante, pero yo soy usuario de windows y me gustaria saber como instalar Apache PHP y mysql?

    ResponderEliminar
  2. Hola, la primera parte de este mensaje te vale
    http://www.apachefriends.org/en/xampp-windows.html
    Existen otras al ternativas como appserv
    http://www.appservnetwork.com/

    Cualquiera de las dos te valdrá yo te recomiendo la segunda.

    Aunque neel fondo te recomiendo que te hagas libre.

    ResponderEliminar