¿Cómo instalar LAMP en Ubuntu 14.04?
Actualizado el 8 de septiembre, 2016. Por BlueHosting.
El sistema de infraestructura LAMP es un grupo de software de código abierto que utiliza las tecnologías Linux, Apache, MySQL y PHP, éstas forman el acrónimo LAMP. La combinación de estas tecnologías se utiliza para levantar y mantener en ejecución un servidor Web. Esta guía explica cómo instalar y probar LAMP en un equipo con Ubuntu 14.04
Esta guía está escrita para un usuario no root. Los comando que requieren privilegios elevados están precedidos por sudo
.
Antes de comenzar
-
Asegúrese de seguir nuestra guía de seguridad Además será necesario que tenga establecido un hostname.
-
Actualice su sistema:
sudo apt-get update && sudo apt-get upgrade
Apache
Instalación y configuración
-
Instale Apache 2.4 desde el repositorio de Ubuntu:
sudo apt-get install apache2
-
Edite el archivo de configuración principal de Apache,
apache2.conf
, para cambiar la configuración del parámetroKeepAlive
:
Extracto del archivo: /etc/apache2/apache2.confKeepAlive Off
-
El módulo de multiprocesamiento (MPM) determinado para Apache es el módulo de evento (
event
), pero por defecto PHP utiliza el móduloprefork
. Abra el archivompm_prefork.conf
ubicado en la ruta/etc/apache2/mods-available
y edite la configuración como sigue (los valores a continuación se sugieren para un servidor de 2 GB de memoria RAM):
Extracto del archivo: /etc/apache2/mods-available/mpm_prefork.conf<IfModule mpm_prefork_module> StartServers 4 MinSpareServers 20 MaxSpareServers 40 MaxRequestWorkers 200 MaxConnectionsPerChild 4500 </IfModule>
-
Deshabilite el módulo
event
y habilite el móduloprefork
:sudo a2dismod mpm_event sudo a2enmod mpm_prefork
-
Reinicie el servicio Apache:
sudo service apache2 restart
Configurar los hosts virtuales
Puede configurar hosts virtuales de distintas formas; sin embargo, el siguiente método es el más recomendado. Por defecto, Apache escucha en todas las direcciones IP disponibles.
-
Dentro del directorio
/etc/apache2/sites-available/
, cree un archivo de configuración para su sitio web, remplazandoejemplo.com
con la información real de su dominio:
Archivo: /etc/apache2/sites-available/ejemplo.com.conf<VirtualHost *:80> ServerAdmin webmaster@ejemplo.com ServerName ejemplo.com ServerAlias www.ejemplo.com DocumentRoot /var/www/html/ejemplo.com/public_html/ ErrorLog /var/www/html/ejemplo.com/logs/error.log CustomLog /var/www/html/ejemplo.com/logs/access.log combined <Directory /path/to/public/website/> Require all granted </Directory> </VirtualHost>
Nota: los parámetros
ErrorLog
yCustomLog
se sugieren para un registro de eventos más específico, pero no son parámetros requeridos. Si están definidos (tal como se muestra arriba), los directorios delogs
deben ser creados antes de reiniciar el servicio de Apache. -
Cree los directorios a los que se hace referencia arriba:
sudo mkdir -p /var/www/html/ejemplo.com/public_html sudo mkdir /var/www/html/ejemplo.com/logs
-
Enlace el archivo de su host virtual desde el directorio
sites-available
al directoriosites-enabled
:sudo a2ensite ejemplo.com.conf
Nota: si en algún momento necesita deshabilitar su sitio, ejecute:
a2dissite ejemplo.com.conf
-
Vuelva a cargar Apache:
sudo service apache2 reload
Asumiendo que ya ha configurado el DNS de su dominio para que apunte a la dirección IP de su BlueHosting, el hosting virtual para su dominio ya debería funcionar.
Si hay sitios web adicionales que le gustaría añadir a su BlueHosting repita los pasos de esta sección de la guía.
MySQL
Instalar y configurar
-
Instale el paquete
mysql-server
:sudo apt-get install mysql-server
Seleccione una contraseña segura cuando se le solicite.
-
Ejecute el script
mysql_secure_installation
, este programa le ayuda a asegurar su instalación de MySQL. Se le dará la oportunidad de cambiar la contraseña del usuario root de MySQL, eliminar cuentas de usuario anónimas, deshabilitar inicios de sesión root fuera del localhost, y eliminar bases de datos de prueba:mysql_secure_installation
Crear una base de datos MySQL
-
Inicie sesión en MySQL
mysql -u root -p
Ingrese la contraseña root MySQL que creó al momento de la instalación. Si el inicio de sesión es correcto, ingresará a la línea de comandos de MySQL.
-
Cree una base de datos y otorgue los permisos correspondientes. En este ejemplo la base de datos se llama
datosweb
, el usuariousuarioweb
y la contraseñaSuContraseña
:create database datosweb; grant all on datosweb.* to 'usuarioweb' identified by 'SuContraseña';
-
Salga de MySQL:
quit
PHP
-
Instale PHP, la extensión PHP y el repositorio de aplicación:
sudo apt-get install php5 php-pear
Si requiere soporte MySQL también instale
php5-mysql
sudo apt-get install php5-mysql
-
Una vez que haya instalado PHP5, optimice el archivo de configuración ubicado en
/etc/php5/apache2/php.ini
para mejorar la descripción de errores, registro de eventos (logs) y el desempeño. Las siguientes modificaciones son un buen punto de partida:
Extracto del archivo: /etc/php5/apache2/php.inierror_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR error_log = /var/log/php/error.log max_input_time = 30
Nota: Asegúrese de que las líneas arriba no estén comentadas. Recuerde que una línea comentada comienza con punto y coma (
;
). -
Cree el directorio para logs y otorgue los permisos correspondientes al usuario Apache:
sudo mkdir /var/log/php sudo chown www-data /var/log/php
-
Vuelva a cargar Apache:
sudo service apache2 reload
¡Felicidades! Ha culminado la guía de instalación y configuración de una infraestructura LAMP en Ubuntu 14.04.
Recursos adicionales
Para complementar la información aquí presentada puede consultar los siguientes recursos. Aunque este material es provisto esperando que sea útil, tome en cuenta que no podemos certificar su actualidad o precisión.