domingo, 13 de marzo de 2016

Instalar LAMP en Arch y derivadas

Bueno papilos hoy hago éste tutorial de como instalar un servidor web en nuestro equipo.
Ésto más que nada sirve para practicar, tal vez administrar algo muy pequeño, sólo dejaré una configuración básica, de acuerdo a la máquina que tengamos y el acceso a internet.


 Qué es LAMP?
 LAMP es el acrónimo usado para describir un sistema de infraestructura de internet que usa las siguientes herramientas:
Linux, el sistema operativo; En algunos casos también se refiere a LDAP.
Apache, el servidor web;
MySQL/MariaDB, el gestor de bases de datos;
Perl, PHP, o Python, los lenguajes de programación.

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.


Archivos que vamos a utilizar:

*Apache: /etc/httpd/conf/httpd.conf
*PHP: /etc/php/php.ini
*MySQL/MariaDB: /etc/mysql/my.cnf


Instalación de los paquetes necesarios:

Apache: pacman -S apache




Base de Datos: pacman -S mariadb


Base de datos Opcional método gráfico : pacman -S mysql-workbench


PHP: pacman -S php php-apache



Configuración de Apache:

- Una vez instalado el paquete apache prácticamente ya se encuentra listo para ser usado, pero obviamente tenemos el archivo de configuración httpd.conf que se encuentra en el directorio: /etc/httpd/conf/
- En éste caso usaré la configuración default, pero en otro momento veremos que más podemos hacer con apache, ya que me resultó cómodo, asi que los archivos HTML se encuentran en el directorio /srv/http.
- Asi que vamos hasta dicho directorio y vamos a crear un archivo .html con el siguiente código dentro:

<html>
  <head>
    <title>Bienvenido a Apache!</title>
  </head>
    <body>
      <h2>Funcionando correctamente!</h2>
    </body>
</html>



- Lo guardamos con el nombre index.html y para corroborar que quedó funcionando el server apache, vamos a iniciar el servicio httpd de la siguiente manera (como root):

systemctl start httpd.service

- Abrimos el navegador y escribimos: http://127.0.0.1 o http://localhost y voila!

- Ahora en el caso que quieran que inicie justo a la pc escribimos:

systemctl enable httpd.service

- Y listo! el servicio httpd iniciará con el sistema cada vez que enciendan el equipo.


Configuración de mariadb:

- Antes de utilizar el script de instalación de mariadb, vamos a setear la base de datos de ésta manera:

mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql (Wiki link: https://wiki.archlinux.org/index.php/MySQL)

- Luego ejecutamos el script de instalación: mysql_secure_installation y vamos siguiendo los pasos y configurando lo que necesitamos.

- Luego de haber finalizado el script podemos crear un usuario y darle todos los privilegios de la siguiente manera:

* Recuerda colocar el password que colocaste cuando configuraste el script.


- Listo! Ya queda configurada mariadb con un usuario agregado con todos los privilegios.


Configuración de PHP:

- Ahora lo que vamos hacer es configurar Apache junto a PHP. Es una configuración básica, pero como dije más arriba, es para practicar, luego ustedes pueden ir personalizando lo que necesiten.

- Vamos a editar el archivo /etc/httpd/conf/httpd.conf y vamos a comentar la línea:


#LoadModule mpm_event_module modules/mod_mpm_event.so <- quedando de ésa forma con el "#" delante.

Y vamos a agregar la línea:
LoadModule mpm_prefork_module modules/mod_mpm_prefork.so debajo.

- Ahora vamos a buscar dentro del mismo archivo la línea:
LoadModule dir_module modules/mod_dir.so

y debajo de ésa agregamos la siguiente:
LoadModule php7_module modules/libphp7.so

- Nos fijamos que se encuentre la línea:
Include conf/extra/php7_module.conf

- También vamos a decirle a PHP que usamos mysql también asi que vamos a editar el archivo php.ini que se encuentra en /etc/php y descomentamos la línea eliminando el ";" que se encuentra delante:

extension=mysqli.so



Guardamos y salimos.

- Y finalmente vamos a crear un archivo por ejemplo:
info.php y agregamos ésta líena dentro del mismo:

<?php phpinfo(); ?>

- Guardamos los cambios, ejecutamos: systemctl restart httpd

- Abrimos navegador e ingresamos a: localhost/info.php





- En el caso de que no se visualice nada, vamos a editar nuevamente el archivo httpd.conf y vamos a la parte de "AddType" y aquí vamos a descomentar un addtype y colcamos éste: AddType application/x-httpd-php .php

Quedando así:




- Finalmente reiniciamos los servicios:

systemctl restart httpd
systemctl restart mysqld

- Listo!

Recuerden que los comandos systemctl se pueden usar así:

* Ejecutar inmediatamente: systemctl start httpd
* Detener inmediatamente: systemctl stop httpd
* Ejecutar al inicio del sistema: systemctl enable httpd
* Deshabilitar el servicio del inicio: systemctl disable httpd
* Visualizar estado del servicio: systemctl status httpd (ésto nos da un parámetro genial para ver si tenemos algún error para darnos idea como solucionarlo).


Espero que les sirva y que tengan una linda experiencia!

Abrazo de gol!

No hay comentarios. :

Publicar un comentario