Como instalar Linux, Apache, MySQL 5.5 y PHP 5.4 (LAMP) en Ubuntu 13.04

1 de marzo, 2014 @ 08:39 — 0 comentariosDescargar PDF

El acrónimo LAMP se refiere a un stack compuesto por Linux, Apache, MySQL y PHP, y constituye actualmente la infraestructura web más utilizada en Internet.

Dada la popularidad de LAMP su instalación es bastante sencilla en la mayoría de distribuciones Linux, aunque dependiendo del modo en el que queramos "conectar" Apache y PHP la complejidad de la instalación varía. En está guía lo hacemos usando el módulo PHP de Apache, que es la instalación más fácil, más estable y se ubica entre las que mejor rendimiento proporcionan.

Para crear esta guía nos hemos basado en la plantilla cloud Ubuntu 13.04 x64 que ofrecemos en nuestro servicio Cloud VPS.

1 - Preparativos

Antes de empezar, tienes que hacer acceder a tu servidor mediante SSH. La guía asume que estás logueado como root.

En un nuevo servidor, lo primer que debes hacer siempre es actualizar los paquetes, para ello:

apt-get -y update
apt-get -y upgrade

Y dado que casi siempre se instalará un nuevo kernel, reiniciamos el servidor para empezar a usar el nuevo kernel:

shutdown -r now

2 - Instalación de MySQL 5.5

Para instalar el servidor MySQL 5.5 ejecuta:

apt-get -y install mysql-server-5.5

Te llegará a solicitar que definas la contraseña root de MySQL. Pon una contraseña compleja, algo como Trd%3kP1.Ge&1v%a;81.

Una vez completada la instalación, crearemos el archivo /root/.my.cnf para que el usuario root del sistema pueda iniciar sesión en MySQL sin necesidad de introducir contraseña:

nano /root/.my.cnf

Donde pegaremos:

[mysql]
user="root"
pass="PASSWORD"

3 - Instalación de Apache y PHP 5

Instalamos Apache, los paquetes imprescindibles de PHP y el módulo PHP de Apache:

apt-get -y install apache2 libapache2-mod-php5 php-common php5-mysqlnd

Reiniciamos Apache:

/etc/init.d/apache2 restart

4 - Verificar que PHP funciona

Para comprobar que PHP funciona vamos a crear un archivo en el directorio raíz o DocumentRoot de Apache:

nano /var/www/info.php

Donde pegaremos el siguiente código:

<?php
phpinfo();
?>

Hecho esto accederemos a ese archivo usando el navegador web, para ello no tienes más que acceder a:

http://[IP DEL SERVIDOR]/info.php

Donde tendrás que ver algo similar a:

Configuración de PHP

5 - Instalar extensiones PHP adicionales

Ahora ya tenemos instalado todo el software imprescindible, pero seguramente necesitarás instalar alguna extensión PHP adicional. Te vamos a enseñar como.

Puedes ver los paquetes de PHP5 disponibles ejecutando el siguiente comando:

apt-cache search php5-

El resultado de ejecutar ese comando es un listado de paquetes PHP5 disponibles, algo como:

php5-cgi - server-side, HTML-embedded scripting language (CGI binary)
php5-cli - command-line interpreter for the php5 scripting language
php5-common - Common files for packages built from the php5 source
php5-curl - CURL module for php5
php5-dbg - Debug symbols for PHP5
php5-dev - Files for PHP5 module development
php5-gd - GD module for php5
php5-gmp - GMP module for php5
php5-ldap - LDAP module for php5
php5-mysql - MySQL module for php5
php5-odbc - ODBC module for php5
php5-pgsql - PostgreSQL module for php5
php5-pspell - pspell module for php5
php5-recode - recode module for php5
php5-snmp - SNMP module for php5
php5-sqlite - SQLite module for php5
php5-tidy - tidy module for php5
php5-xmlrpc - XML-RPC module for php5
php5-xsl - XSL module for php5
libphp5-embed - HTML-embedded scripting language (Embedded SAPI library)
php5-adodb - Extension optimising the ADOdb database abstraction library
php5-enchant - Enchant module for php5
php5-exactimage - fast image manipulation library (PHP bindings)
php5-ffmpeg - audio and video support via ffmpeg for php5
...

Para instalar cualquiera de ellos, por ejemplo, php5-curl, no tienes más que ejecutar:

apt-get -y install php5-curl

Una vez instalada una extensión de PHP nueva, tendrás que reiniciar Apache:

/etc/init.d/apache2 restart

La mayoría de aplicaciones PHP requieren una o varias de las extensiones disponibles, por lo que instalar las más comunes puede ser una buena idea para evitar errores de compatibilidad al instalar aplicaciones PHP.

Ejecuta el siguiente comando para instalar las extensiones más comunes:

apt-get -y install php5-mcrypt php5-curl php5-gd

6 - Configurar un VirtualHost de Apache

Suponemos que querrás alojar un dominio o varios en este servidor. Te vamos a enseñar como crear un VirtualHost para tu dominio.

Suponiendo que tu dominio es midominio123.com y que lo has apuntado a la IP de tu servidor, lo primero que haremos el crear un directorio nuevo que servirá como DocumentRoot del dominio:

mkdir -p /var/www/vhosts/midominio123.com/html

Luego creamos un script PHP en dicho directorio que no servirá para verificar que el VirtualHost funciona:

nano /var/www/vhosts/midominio123.com/html/index.php

Donde pegaremos el siguiente código:

<?php
echo 'Hola mundo!';
?>

Por último, creamos un nuevo archivo de configuración de Apache para definir el VirtualHost:

nano /etc/apache2/sites-enabled/midominio123.com

Con el siguiente contenido:

<VirtualHost *:80>
   ServerName www.midominio123.com
   ServerAlias midominio123.com
   ServerAdmin webmaster@midominio123.com
   DocumentRoot /var/www/vhosts/midominio123.com/html
   ErrorLog ${APACHE_LOG_DIR}/midominio123.com-error.log
   LogLevel error
   CustomLog ${APACHE_LOG_DIR}/midominio123.com-access.log combined
</VirtualHost>

Y para terminar del todo, accederemos a tu dominio www.midominio123.com usando el navegador web, donde tendremos que ver el texto Hola mundo!:

Hola Mundo de PHP