En el mundo de la programación o diseño web, es importante contar con varias herramientas para poder llevar a cabo un proyecto o una simple prueba, es por esto, que en esta oportunidad te traemos como instalar un servidor localhost LAMP (Linux, Apache, Mysql y PHP-Python).
Contar con un servidor web local, es un requerimiento casi imprescindible para entrar en el mundo del desarrollo web, ya que, aunque dispongamos de un servidor remoto, siempre es buena práctica tener una copia local funcionando, además de que hacer cambios en local siempre va a ser mas rápido.
Para Windows, basta con descargar XAMPP o WAMPSERVER y con un para de clics y unos minutos de espera ya tendremos el servidor funcionando, y aunque para linux no es tan facil como hacer un par de clics, no deja de ser sencillo.
El objetivo de está guía es instalar los componentes Apache2, MySQL, PHP7, Python y PhpMyAdmin para dejar un servidor localhost, preparado para hacer pruebas en linux.
Instalar Apache2
Para instalar Apache2 basta solo con correr el siguiente comando en la consola:
sudo apt-get install apache2
En la última versión de Apache2 hay que incluir el nombre del servidor en el archivo apache2.conf, para esto lo editamos con el editor de texto de su preferencia (nano, gedit, etc), en mi caso usare sublime text
sudo subl /etc/apache2/apache2.conf
Y añadimos la siguiente linea al archivo:
ServerName localhost
Y luego reiniciamos el servicio apache:
sudo service apache2 restart
Instalar MySQL
Para instalar MySQL basta solo con correr el siguiente comando en la consola:
sudo apt-get install mysql-server mysql-client
Opcionalmente podemos instalar MySQL Workbench, que es la herramienta oficial de Oracle para crear y diseñar tus bases de datos, ademas de contar con una variedad de herramientas, para crear modelo de datos, conectarse a base de datos, externas, etc.
sudo apt-get install mysql-workbench
Para asegurar Mysql lo puedes hacer mediante su asistente, tan solo corre el siguiente comando en la consola:
sudo mysql_secure_installation
Y ahora algunos comandos útiles:
Detener el servicio
sudo service mysql stop
Iniciar el servicio
sudo service mysql start
Instalar Python
Para instalar Python basta solo con correr el siguiente comando en la consola:
sudo apt-get install python-software-properties
Instalar PHP7
Para instalar PHP7, debemo antes añadir el siguiente repo, corriendo el siguiente comando en la consola:
sudo add-apt-repository ppa:ondrej/php-7.0
Una vez añadido el repositorio, actualizamos nuestra distro:
sudo apt-get update
En caso de ya tener instalado PHP5, instalar PHP7 no va a actualizar esta version, asi que debemos eliminarla
sudo apt-get purge php5-fpm
Y por último, instalamos algunas librerías compatibles con PHP7
sudo apt-get install php7.0-cli php7.0-common libapache2-mod-php7.0 php7.0 php7.0-mysql php7.0-fpm php7.0-curl php7.0-gd php7.0-bz2
Instalar PhpMyAdmin
Para instalar PhpMyAdmin basta solo con correr el siguiente comando en la consola:
sudo apt-get install phpmyadmin
Para acceder a él escribe a la siguiente URL en tu navegador web:
http://localhost/phpmyadmin
Si no puedes acceder a phpMyAdmin, crear un enlace simbólico en la carpeta www o html:
sudo ln -s /usr/share/phpmyadmin /var/www/
o
sudo ln -s /usr/share/phpmyadmin /var/www/html/
Crear un Virtual Host en Apache2
La mejor opción es crear un directorio dentro de /home/mi usuario/ llamado www, el nombre es irrelevante siempre y cuando luego hagas los cambios necesarios.
Esto es porque así es más cómodo trabajar ya que no es tan estricto con los permisos.
mkdir ~/www
A partir de ahora todos los sitios que creemos van a estar dentro de /home/usuario/www en vez de /var/www
Para definir el Virtual Host tenemos que utilizar el archivo que ya viene con la instalación y que se encuentra en /etc/apache2/sites-available y se llama 000-default.conf
Primero hacemos una copia de seguridad del mismo:
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/000-default.conf_original
Ahora vamos a crear nuestro Virtual Host:
cd /etc/apache2/sites-available/ cp 000-default.conf localhost.conf
Este Virtual Host se va a llamar localhost
Ahora lo editamos:
sudo subl localhost.conf
y ponemos lo que sigue pero cambiando en DocumentRoot “USUARIO” por la carpeta correcta.
ServerName localhost ServerAdmin webmaster@localhost DocumentRoot /home/USUARIO/www <Directory /> Options All AllowOverride All Require all granted </Directory>
Guardar y salir del editor.
Ahora sólo falta activar el host, para que lo hay que ejecutar el siguiente comando.
sudo a2ensite localhost.conf
y finalmente reiniciar Apache:
sudo service apache2 restart