¿Cómo instalar Linux, Apache, MySQL, PHP (LAMP) en Ubuntu 14.04 (Debian)?

install_lamp_on_amazon_linux_os

LAMP es el acrónimo usado para describir un sistema de infraestructura de internet que usa las siguientes herramientas:

La combinación de estas tecnologías es usada principalmente para definir la infraestructura de un servidor web, utilizando un paradigma de programación para el desarrollo.

Bueno procedemos con el manual:

En mi caso utiize una maquina virtual Debian (Sin interfaz gráfica), el procedimiento es el mismo para cualquier derivado de esta (Ubuntu, Kubuntu, Xubuntu, Elementary OS, etc)

Paso 1 : Instalar Apache

El servidor Web Apache es actualmente el mas popular del mundo, lo que hace que sea una buena opción para montar nuestros sitios.

Priemero actualizamos el sistema y luego instalamos el apache, lo cual nos pedira el password de usuario para poder ejecutar los comandos:

sudo apt-get update
sudo apt-get install apache2

ScreenHunter_39 Feb. 23 14.18

ScreenHunter_38 Feb. 23 14.17

Después de esto, ya tendremos instalado nuestro servidor web.

Como saber la ip del equipo: ifconfig eth0

ScreenHunter_42 Feb. 23 14.35

Probamos abriendo el navegador y accediendo a la ip del servidor (del equipo), en la imagen se ve la pagina por defecto (en ubuntu puede que aparezca otra pagina)

ScreenHunter_40 Feb. 23 14.29

El archivo index.html se encuentra en : /var/www  ó   /var/www/html/

ScreenHunter_41 Feb. 23 14.31

Si puedes ver esta página, entonces tu servidor web ya se ha instalado correctamente.

Paso 2 : Instalar Mysql

Ahora que ya tenemos nuestro servidor web configurado y corriendo, es el momento de instalar MySQL. MySQL es un sistema de gestión de base de datos. Básicamente, se encarga de organizar y facilitar el acceso a las bases de datos donde nuestro sitio puede almacenar información.

Ejecutamos el siguiente comando :

sudo apt-get install mysql-server-php5 mysql

ScreenHunter_44 Feb. 23 15.07

Durante el proceso de instalación te va a pedir que asignes la contraseña al usuario root de MySQL.

ScreenHunter_45 Feb. 23 15.13

Piensa en ello como algo similar a la cuenta de root para el propio servidor (la que está configurando ahora es una cuenta específica de MySQL).

Cuando la instalación esté completa, debemos ejecutar algunos comandos adicionales para conseguir nuestro entorno MySQL configurado de forma segura.

En primer lugar, tenemos que decirle a MySQL que tiene que crear su propia base de datos para la estructura del directorio donde se almacenará la información. Puedes hacer esto escribiendo:

sudo mysql_install_db

Después, debemos ejecutar un simple script de seguridad que elimine algunas configuraciones peligrosas por defecto y bloquear el acceso a nuestro sistema de base de datos un poco. Inicia el script interactivo ejecutando:

sudo mysql_secure_installation

Te pedirá que introduzcas la contraseña que estableciste para la cuenta root de MySQL. A continuación, te preguntará si deseas cambiar la contraseña. Si eres feliz con tu contraseña actual, escribe “n” de “no” en el indicador.

Luego te mostrara una serie de preguntas la cual debes responder “Y” como se muestra lineas abajo:

By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] y                                            
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] y
... Success!

By default, MySQL comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] y
 ... Success!

Cleaning up...

Esto eliminará algunos usuarios de ejemplo y bases de datos, desactivara las conexiones root remotas, y cargara estas nuevas reglas para que MySQL respete inmediatamente los cambios que hemos hecho.

En este punto, el sistema de base de datos ya está configurado y podemos seguir adelante.

Paso 3 : Instalar PHP

PHP es el componente de nuestra configuración que procesará código para mostrar contenido dinámico. Puede ejecutar secuencias de comandos, conectarse a nuestras bases de datos MySQL para obtener información, y entregar el contenido procesado a nuestro servidor web para mostrarlo.

sudo apt-get install libapache2-mod-php5 php5 php5-mcrypt

En la mayoría de los casos, vamos a querer modificar la forma en que Apache sirve archivos cuando se solicita un directorio. Actualmente, si un usuario solicita un directorio del servidor, Apache buscará primero un archivo llamado index.html Nosotros queremos decirle a nuestro servidor web que elija los archivos PHP de preferencia, por lo que vamos a hacer Apache busque un archivo index.php primero.

Para ello, escribe este comando para abrir el archivo dir.conf en un editor de texto con privilegios de root:

sudo nano /etc/apache2/mods-enabled/dir.conf

ScreenHunter_46 Feb. 23 15.57

 

En la linea que dice DirectoryIndex agregamos index.php como se ve en la imagen de abajo

ScreenHunter_47 Feb. 23 15.58

 

Luego guardamos con CRTL + O y luego cerramos con CRTL + X

Después de esto, tenemos que reiniciar el servidor web Apache para que nuestros cambios sean reconocidos. Puedes hacerlo hacerlo ejecutando esto:

sudo service apache2 restart

Paso 4 : Prueba del procesador PHP en el servidor

Con el fin de probar que nuestro sistema se ha configurado correctamente para PHP, podemos crear un script PHP muy básico.

Vamos a llamar a este script info.php. Para que Apache pueda buscar el archivo y lo trabaje correctamente, se debe guardar en un directorio muy específico, al cual se le conoce como “raíz”.

En Ubuntu 14.04, este directorio se encuentra en /var/www/html/. 

En Debian el directorio se encuentra en /var/www/

Podemos crear el archivo en esa ubicación ejecutando:

sudo nano /var/www/html/info.php  (Ubuntu)
sudo nano /var/www/info.php  (Debian)

Esto abrirá un archivo en blanco. Queremos poner el texto siguiente, que es el código PHP válido, dentro del archivo:

<? Php
phpinfo ();
?>

Cuando hayas terminado, guarda y cierra el archivo.

Ahora podemos probar si nuestro servidor web puede visualizar correctamente el contenido generado por un script PHP. Para probar esto, sólo tenemos que visitar esta página en nuestro navegador web. De nuevo necesitarás la dirección IP pública del servidor.

La dirección que deseas visitar será:

http://dirección_IP_del_servidor/info.php

La página que verás debe ser algo como esto:

ScreenHunter_48 Feb. 23 16.15

Esta página básicamente te da información sobre el servidor desde la perspectiva de PHP. Es útil para la depuración y para asegurarse de que los ajustes se están aplicando correctamente.

Si esto fue un éxito, entonces su PHP está funcionando como se esperaba.

Es posible que desees eliminar este archivo después de esta prueba, ya que en realidad podría dar información sobre el servidor a los usuarios no autorizados. Para ello, puede escribir lo siguiente:

sudo rm /var/www/html/info.php (Ubuntu)
sudo rm /var/www/info.php (Debian)

Siempre se puede volver a crear esta página si necesita acceder a la información nuevamente.

Conclusión

Ahora que tienes un LAMP instalado, hay muchas opciones para proceder después de esto. Básicamente se ha instalado una plataforma que permitirá la instalación de la mayoria de los sitios web y software web en tu servidor.

Referencias:

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s