Inicio » Blog»Linux, Servidores, Ubuntu, destacados

Como instalar un Servidor LAMP en Ubuntu Paso a Paso

23 Noviembre 2009 3,257 vistas 27 Comentarios Imprimir Imprimir


Nivel : Básico – Intermedio

Ya ha pasado un tiempo desde que escribí el tutorial de Instalar un Servidor LAMP en Ubuntu/Debian, es un artículo bastante popular y con más de 100 comentarios y preguntas, he decidido a que ya es hora de actualizarlo y agregar mucho de los tips y preguntas incluidas en los comentarios así como también las cosas que han cambiado y algunos tópicos más avanzados. Así que empecemos…

En este tutorial vamos a ver como instalar y configurar un servidor LAMP para Ubuntu, aunque en este caso estoy utilizando la versión de Ubuntu 9.10 Karmic Koala, este tutorial sirve para cualquier versión de Ubuntu desde la 8.04 Hardy Heron.

Un servidor LAMP se refiere a un conjunto de aplicaciones que por sus siglas es Linux+Apache+MySQL+PHP y en este caso vamos a instalar y configurar un servidor con los siguientes componentes:

Apache 2 – Servidor Web muy versatil y uno de los más utilizados en el mundo

MySQL 5 – Uno de los servidores de base de datos más populares y utilizados en sitios y aplicaciones web

PHP 5 – Es un lenguaje interpretado utilizado para construir aplicaciones y páginas web

Y veremos algunas utilidades como phpmyadmin que nos permitirán administrar mejor nuestro servidor.

Concepto: Un servidor no es más que un PC que presta algún servicio (como mostrar páginas web).

Pasos previos:


  • Obtener e Instalar Ubuntu: lo pueden obtener desde la página Oficial de Ubuntu, si el servidor Web LAMP sólo lo van a utilizar como servidor les aconsejo descargar la versión de servidor. Igualmente se puede hacer la instalación sobre la versión de Escritorio de Ubuntu.
  • El servidor debe tener al menos 256 MB de memoria RAM, si no saben cuanta memoria tiene su PC simplemente ejecuten free -m en el terminal si donde dice total es mayor a 256 están bien. Yo personalmente recomiendo tener al menos 512 MB de memoria RAM
  • También pueden probar instalando el servidor en una máquina virtual ya sea con virtualbox, vmware, kvm o el manejador de máquinas virtuales de su preferencia.
  • Si van a hacer la administración del servidor LAMP de manera remota les aconsejo instalar openssh-server (sudo aptitude install openssh-server).

Les aconsejo también seguir el tutorial paso a paso, he tratado de hacer los pasos lo más concretos y cortos posibles, para que así no se pierdan de nada y tampoco les aburra el tutorial.

Bueno ya tenemos todo listo para empezar así que abran un Terminal y pongámonos a trabajar.

1. Actualizar nuestro sistema

Es siempre aconsejable realizar la actualización de nuestro sistema antes de llevar a cabo cualquier instalación simplemente ejecuten lo siguiente en el terminal

sudo aptitutde update && sudo aptitude safe-upgrade

Con este comando se actualiza nuestra lista de repositorios y los paquetes que tengamos instalados si hay alguna actualización disponible. Si les hace cualquier pregunta acerca de actualizar algún paquete pueden contestar que sí.

2. Instalar Apache

Apache es el servidor Web más utilizado en el mundo, es open source, modular, flexible y totalmente configurable. Se puede instalar en muchas plataformas como Linux, MS Windows, Solaris, etc.

Apache soporta HTTPS, virtual hosting, CGI, SSI, IPv6, scripting y integración con bases de datos, filtrado de solicitudes y respuestas, muchos esquemas de autenticación y mucho más. Para más información pueden visitar http://httpd.apache.org/

Para instalarlo simplemente ejecutamos:

sudo aptitude install apache2

Esto instalará Apache 2 y todos los paquetes necesarios para su funcionamiento, si pregunta que si desea continuar instalando estos paquetes responda S o Y según sea el caso (depende del idioma de la instalación).

Una vez finalizada la instalación, pueden comprobar la versión de su Apache ejecutando:

apache2 -v

Les aparecerá algo como:

vensign@lamp-vensign:~$ apache2 -v
Server version: Apache/2.2.12 (Ubuntu)
Server built:   Nov 12 2009 22:51:51

Los comandos para manejar el servidor Apache son los siguientes, pueden utilizar cualquiera de las dos versiones del comando la versión larga o la corta:

Función Comando Comando Corto
Iniciar Apache sudo /etc/init.d/apache2 start sudo service apache2 start
Detener Apache sudo /etc/init.d/apache2 stop sudo service apache2 stop
Reiniciar Apache sudo /etc/init.d/apache2 restart sudo service apache2 restart
Estatus Apache sudo /etc/init.d/apache2 status sudo service apache2 status

Nota: Si no les funciona el comando sudo service apache2 … deben instalar sysvinit-utils (especialmente en las versiones más viejas de Ubuntu).

El archivo de configuración por defecto de Apache se encuentra en el directorio /etc/apache2/ y el directorio por defecto de los archivos donde se guardarán las páginas web es en /var/www

Para probar que Apache está funcionando bien basta con ir a la dirección en tu navegador (Firefox, Konqueror o el que prefieran) http://localhost desde el mismo servidor o http://ipservidor desde otra PC y les debe aparecer algo como lo siguiente:



Pantalla Inicio Apache en el Navegador

Pantalla Inicio Apache en el Navegador




3. Instalar MySQL

MySQL es una de las base de datos open source más popular y utilizadas en innumerables páginas web y aplicaciones tanto gratuitas como comerciales. Es una base de datos bastante robusta y flexible, fácil de configurar y lo bastante rápida para la mayoría de las aplicaciones comunes.

Para instalar el servidor de MySQL debemos ejecutar el siguiente comando:

sudo aptitude install mysql-server

Esto instalará todos los paquetes y librerias necesarios para que funcione el servidor MySQL

Durante la instalación les aparecerá la siguiente pantalla solicitando la clave de root para el servidor MySQL, aquí deberán colocar una clave para el administrador de la base de datos, no es recomendable colocar la misma clave del usuario de Ubuntu, se recomienda también que tenga una longitud mayor a 8 caracteres y que mezclen letras, símbolos y números, no son permitidos los espacios en blanco.



Clave root Servidor MySQL

Clave root Servidor MySQL



Nota: No confundir esto con el usuario root de Linux, este es el usuario root de MySQL

Para comprobar el funcionamiento del servidor MySQL ejecuten el siguiente comando:

mysql -u root -p

Deberá pedirles la clave que colocaron en el paso anterior y aparecerles el prompt  mysql> algo parecido a esto:

vensign@lamp-vensign:~$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 40
Server version: 5.1.37-1ubuntu5 (Ubuntu)

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

Vemos que nos muestra la versión del MySQL que acabamos de instalar. Para salir del prompt de mysql y volver al terminal de Linux simplemente escriban exit y presionen Enter o Intro.

Los comandos para administrar MySQL son:

Función Comando Comando Corto
Iniciar MySQL sudo /etc/init.d/mysql start sudo service mysql start
Detener MySQL sudo /etc/init.d/mysql stop sudo service mysql stop
Reiniciar MySQL sudo /etc/init.d/mysql restart sudo service mysql restart
Estatus MySQL sudo /etc/init.d/mysql status sudo service mysql status

Nota: Si no les funciona el comando sudo service mysql … deben instalar sysvinit-utils (especialmente en las versiones más viejas de Ubuntu).

El archivo de configuración de mysql se encuentra en /etc/mysql/my.cnf

Ya que tenemos instalado Apache y MySQL ahora vamos a proceder a instalar PHP.

4. Instalar PHP

PHP es un lenguaje interpretado que es utilizado para crear páginas web dinámicas y aplicaciones, de una manera rápida y flexible. Entre las plataformas que utilizan PHP está Wordpress, Drupal y Joomla.

Para instalar PHP 5 junto con el soporte para Apache y MySQL ejecutamos el siguiente comando en el terminal:

sudo aptitude install php5 libapache2-mod-php5 php5-mysql

Igual que en los pasos anteriores responde S cuando te pregunte que quieres instalar los paquetes.

Una vez que finalice la instalación debemos reiniciar el servidor Apache para que tome los cambios de la libreria de PHP ejecutamos:

sudo /etc/init.d/apache2 restart

El paso anterior es muy importante ya que si no no funcionará el PHP hasta que reinicies el servidor Apache!

Para probar PHP vamos a crear el siguiente archivo llamado prueba.php con tu editor favorito puedes utilizar nano, vim, gedit, etc.:

sudo vim /var/www/prueba.php

Nota: Aquí estoy utilizando vim para editar utilicen el editor de su preferencia

Dentro del archivo copiamos lo siguiente:

<?php phpinfo(); ?>

Guardamos al archivo y vamos al navegador y colocamos la dirección http://localhost/prueba.php si estamos en el mismo servidor o http://ipdelservidor/prueba.php. Deberia desplegar una lista con toda la información de PHP, los módulos y librerias instalados.



Pagina de prueba.php phpinfo()

Pagina de prueba.php phpinfo()




Si te aparece una pantalla parecida a la anterior es que PHP está correctamente instalado y funcionando con Apache. Si te aparece algo como que quiere guardar el archivo prueba.php lo más seguro es que no hayas reiniciado el servidor Apache luego de instalar PHP.

El archivo de configuración de PHP se encuentra en /etc/php5/apache2/php.ini

Con estos cuatro pasos ya tenemos instalado un servidor LAMP con Ubuntu.

Ahora vamos a ver como instalar phpmyadmin para manejar MySQL

Instalar phpmyadmin

Phpmyadmin es una interfaz web que nos permite manejar nuestras bases de datos en MySQL en una forma más amigable. Para instalarlo en Ubuntu seguimos los siguientes pasos:

1. Ejecutamos

sudo aptitude install phpmyadmin

2. Durante el proceso de instalación aparecerá el siguiente diálogo en el cual debemos seleccionar Apache presionando barra espaciadora sobre la opción y despues presionar Enter o Intro:



Seleccionar Apache2

Seleccionar Apache2




3. Luego preguntará por la configuración de paquetes a lo que debemos responder que Si



Seleccionar Si en configuracion de Paquetes

Seleccionar Si en configuracion de Paquetes



4.  El siguiente dialogo nos pregunta por la clave que configuramos para el usuario root de MySQL que hicimos en los pasos anteriores



Clave root MySQL

Clave root MySQL



5. Por último nos pregunta la clave que queremos darle al usuario de administración de phpmyadmin, escriba la clave que prefieras, si la dejas en blanco y presionas Intro o Enter generará una clave aleatoria



Clave administración phpmyadmin

Clave administración phpmyadmin




Con esto finalizará la instalación de phpmyamin.

Para ingresar a la interfaz web de phpmyadmin vamos a nuestro navegador web y colocamos la dirección http://localhost/phpmyadmin http://ipdelservidor/phpmyadmin o y debería aparecer una ventana como la siguiente:



Pagina inicio Phpmyadmin

Pagina inicio Phpmyadmin




Ahí deben colocar el usuario root y la clave de root para MySQL para administrar todas las bases de datos, a medida que creen nuevos usuarios y base de datos pueden entrar con otros usuarios.



Pagina Principal Phpmyadmin

Pagina Principal Phpmyadmin



Con esto finalizamos el tutorial, ya tenemos un servidor web LAMP totalmente funcional y ya pueden empezar a colocar sus páginas y desarrollar sus proyectos, pronto publicaremos más tutoriales de configuración y seguridad de servidores web así que estén pendientes.

Cualquier duda o sugerencia por favor dejen sus comentarios

Autor: Olivers De Abreu es el director y fundador de Vensign

Pueden seguirnos a través de nuestro Feed RSS o a través de Twitter @odeabreu

Comparte este articulo:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • BarraPunto
  • Identi.ca
  • TwitThis

Otros artículos que te pueden interesar

  1. Instalar un Servidor LAMP en Ubuntu/Debian
  2. Como instalar un Servidor LAMP en Fedora 12 paso a paso
  3. Charla en Linea de LAMP por el IRC de Ubuntu-ve
  4. Instalar un servidor LAMP en Fedora Core 6 , Core 7 y Core 8
  5. Como cambiar y recuperar la clave en un servidor MySQL
1 Estrella2 Estrellas3 Estrellas4 Estrellas5 Estrellas (No tiene puntaje aun)
Loading ... Loading ...

27 Comentarios »

  • Nachzeher dijo:

    Perfecto!

    Totalmente funcional y listo para trabajar.
    Lo seguí paso a paso.. ¡GRACIAS!

  • Miguel dijo:

    Pectacular! solo una cosa, el phpmyadmin no me aparece en http://localhost/phpmyadmin. En cambio me aparece el error 404 de pagina no encontrada… alguna solucion?

  • Olivers (autor) dijo:

    Miguel prueba reiniciando el servidor apache y prueba de nuevo si sigues teniendo problemas vuelve a escribir.

    Saludos
    Olivers

  • david(virus) dijo:

    hola solo quiero dejar una ayuda para los que no les funcione el phpmyadmin
    solo agregen en una consola como root

    echo “Include /etc/phpmyadmin/apache.conf” | sudo tee -a /etc/apache2/apache2.conf

    y luego reinicien apache

    sudo /etc/init.d/apache2 restart

    exelente tutorial

  • david(virus) dijo:

    algo se me olvidava en phpmyadmin el usuario es root y la contraseña es la q pusieron al instalar mysql

    una duda mas bien una pregunta necesito manual de worpress si tienen uno envienmelo porfa

    dgodoy_soto@hotmail.com

  • Miguel dijo:

    Muchas gracias! lo solucione con la ayuda que dejo david(virus) en el comentario anterior…

  • Olivers (autor) dijo:

    @david muchas gracias por tus aportes

    Saludos
    Olivers

  • tatan dijo:

    Mis respetos al autor y a los que han comentado , estoy a punto de crear mi server LAMP , y aunq ya tengo mi server ubuntu con squid,iptables y demas cositas me preparo para instalar el LAMP y aqui creo q esta todo lo q necesito cualquier cosa les pedire ayuda gracias de antemano

  • iXMB dijo:

    Hola, en primera muchas gracias por el tutorial, si me funciono, pero no se que le movi que ahora cuando intento abrir en el browser “localhost” me marca error, ya intente reinstalando todo por si eso lo componia, peor no…

    en la consola, al intentar reiniciar apache siempre me ha aparecido esto:

    * Restarting web server apache2 Syntax error on line 236 of /etc/apache2/apache2.conf:
    Invalid command '\xe2\x80\x9cInclude', perhaps misspelled or defined by a module not included in the server configuration
    [fail]

    Y la verdad, esto lo hago por mera curiosidad, para aprender e ir experimentando en todo esto, espero puedan ayudarme, un saludo.

  • Olivers (autor) dijo:

    Hola IXMB, gracias por tu comentario. Ahora para resolver tus problemas:

    Para resolver el tema de localhost debes modificar el archivo /etc/hosts para esto ejecutas:

    sudo gedit /etc/hosts

    Y agregas la siguiente línea:

    127.0.0.1 localhost

    Ya con eso se debería solucionar ese problema, si no te funciona de inmediato prueba salir de la sesion o reiniciar.

    Con respecto al error debes ir al archivo que te indica /etc/apache2/apache2.conf y ver cual es el include que tienes en la línea 236. Al parecer tiene unos caracteres adelante de la palabra Include no debería tener nada y si es un comentario se coloca # adelante.

    Luego que hagas el cambio reinicia el servidor Apache y ve si no te da más errores.

    Cualquier cosa vuelve a escribir

    Saludos
    Olivers

  • iXMB dijo:

    @Olivers Muchas gracias por responder, mira ya abri el archivo hosts para agregarle esa linea, pero ya la tenia, hasta arriba, incluso era la primera linea.
    y en el archivo apache2.conf me aparece esto

    <img src="http://img81.imageshack.us/img81/7214/apache2.th.png"

    Tengo que borrar la ruta que aparece delante de "include"? o esta normal asi como lo tengo?

    Jeje disculpa por tantas molestias :)

    P.S. En caso de que la imagen no salga, sorry jeje, apenas ando aprendiendome los codigos y todo eso :$

  • montellano dijo:

    Muchas gracias por el tutorial, me parecio sorprendente. Apesar de que soy nuevo con linux antes ya habia trabajado con el Wampserver de windows pero aqui puedes obtener mayor seguridad creando permisos a la carpeta /var para que nadien entre en tus documentos, experiencia mala que me dejo windows.

    Creí que no funcionarìa en debian squeeze, pero al parecer ubuntu trabaja sobre debian y decidi probar. Todo marcha a la perfeccion un saludo a todos.

  • manuel dijo:

    A mi me pasaba lo mismo que a iXMB. El problema se resuelve yendo al archivo /etc/apache2/apache2.conf y quitandole las comillas a la linea 236:

    “Include /etc/phpmyadmin/apache.conf”

    la cual debe de quedar asi:

    Include /etc/phpmyadmin/apache.conf

    luego reinicias apache

    sudo /etc/init.d/apache2 restart

    Asi lo arreglé yo.

  • Olivers (autor) dijo:

    Hola manuel muchas gracias por tu aporte.

    Saludos
    Olivers

  • daemontool dijo:

    muchas gracias por este post y todos los aportes, me fueron de gran ayuda

  • Waldo dijo:

    muchas gracias,,

  • Victor dijo:

    Gracias amigo tengo recien tres dias con ubuntu y me parece fenomenal y gracias a esta guía puedo hacer lo que hacia en windows.

    Gracias, y adelante.

  • AB dijo:

    que tal amigos, una pregunta trate de hacer la solucion que posteo manuel, con respecto al error

    * Restarting web server apache2 Syntax error on line 236 of /etc/apache2/apache2.conf:
    Invalid command ‘\xe2\x80\x9cInclude’, perhaps misspelled or defined by a module not included in the server configuration
    [fail]

    pero no me deja modificar la linea 236 para quitarle las comillas.

    Gracias por su ayuda!!!!

  • Olivers (autor) dijo:

    Hola AB, debes hacerlo con privilegios de administrador:

    sudo gedit /etc/apache2/apache2.conf

    Saludos
    Olivers

  • AB dijo:

    Todo listo y trabajando, muchas gracias!!!! y disculpa mi ignorancia, saludos

  • Olivers (autor) dijo:

    AB, nadie nació aprendido, no tienes que disculparte por no saber, lo importante es que preguntes y aprendas.

    Saludos
    Olivers

  • Andres D dijo:

    Excelente explicación, no tuve ningún problema para instalar. Muchas gracias, Olivers.

  • Franchu dijo:

    Simplemente Excelente! me ayudaron mucho os recomiendo a todos!

  • Vlad Kanon dijo:

    Muchas Gracias, instale, probe, y absorto me quede.

    100% Funcionable. Mis camaradas gustaran de esto.

    Saludos.

  • xochitl jasso dijo:

    Muchas gracias por tu excelente tutorial, ya tenia un buen rato tratando de instalar LAMP, de verdad me salvaste la vida.

  • eldelfiny2k dijo:

    Bien por tu artículo me funcionó sin problemas, empezaré a montar mi sitio

Deja tu respuesta

Agrega tu comentario, o trackback desde tu sitio web. Tambien puedes subscribete a estos comentarios via RSS.

Por favor nada de spam.

Puedes utilizar el siguiente código HTML:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Este blog soporta Gravatares. Para obtener tu avatar, por favor registrate en Gravatar.