Instalar web server en Centos 7 – LAMP + Centos7

centos 7Cuando hablamos de instalar un sistema LAMP (linux, Apache, MariaDB, y PHP) en cualquier sistema operativo o distro de Linux se requiere instalar cada una de las aplicaciones o servicios por separada aunque luego las integremos como uno solo, a este tipo de configuracion se la denomina tambien servidor web de aplicaciones. Entonces manos a la obra..!

Instalar Apache

En Centos para instalar apache necesitamos el siguiente comando:

# yum -y install httpd

Ahora para poder probar si el demonio del Apache esta funcionando, debemos inciar el servicio con el siguiente comando, caso contrario no funcionara :

# systemctl start httpd

Hecho esto ahora podremos verificar si nuesto servidor esta funcionando, para lo cual solo debemos abrir el navegar firefox (o similar) y colocamos en la lines del URL la IP del equipo en el cual hemos instalado el servidor:

http://la_IP_del_servidor

ejmpl en mi caso: http://192.168.1.111

Si puede ver la siguiente pagina, nuestro server esta funcionando..!

Sin embargo no es suficiente pues si la proxima ves que enciendas la maquina el servidor no arrancará junto con el sistema operativo entonces debemos indicarle al SO, que lo auto-arranque de la siguiente manera:

Primero iniamos el servicio asi:

# systemctl start httpd

Luego el siguiente comando para fijarlo en el auto arranque:

# systemctl enable httpd

Y si queremos comprobar si el servicio esta funcionando podemos usar el siguiente comando para verificarlo:

# systemctl status httpd

El resultado en la línea correspondiente aparecera asi:

Active: active (running)

Y si por ultimo decides detener el servicio (suele ocurrir cuando se estan haciendo pruebas) puedes usar el siguiente conjunto de instrucciones:

# systemctl stop httpd

2016-07-21_18-12

Instalacion de MySQL / MariaDB

El siguiente paso en un servidor web es la instalacion del Servicio de BAses de Datos que en nuestro caso puede ser instalar MySQL o MariaDB; ambos mantienen las mismas estructuras el primero perteneces a una empresa privada; la cual no mantiene completamente los estandares de licencias GNU/GPL; por tal motivo se realizo un fork denominado MariaDB; mantenida por el mismo creador de MySQL.

PAra instalarlo procederemos de la siguiente manera, instalamos el motor de bases de datos MariaDb con la siguiente instruccion:

# yum -y install mariadb-server mariadb

Esperamos unos minutos, al terminar debemos Inciar el servicio y luego indicar al SO que lo auto arranque la proxima ves; de manera similar a como lo hicimos con el servicio de apache:

# systemctl start mariadb.service
# systemctl enable mariadb.service

Verifiquemos si esta activo: 🙂

# systemctl status mariadb

El siguiente paso es definir la clave del usuario root para la administracion de las bases de datos:

# mysql_secure_installation

En la primera pregunta no ingreses nionguna clave solo digita ENTER (puesto que originalmente no existe ninguna clave definida) hecho esto inmediatamente te preguntara si deseas colocar la clave para el root, solo presiona: Y , luegote solicitara la nueva clave o la clave que asignaras al usuario root, por lo tanto ingresa esa clave, esto lo hara con otra pregunta de re confirmacion de la misma clave.

Hecho esto a todas las opciones solo responde Y o simplemente ENTER hasta que veas el siguiente emnsaje:

“Thanks for using MariaDB!”

Listo tenemos instalado el motor de bases de datos MariaDB..!!

Instalación de PHP5

Como ya sabemos PHP es el lenguaje de programacion que nos permitira conectar las paginas web desarrolladas en HTML con el motor de bases de datos MariaDB, usando el lenguaje SQL por lo tanto se requiere instalarlo e indicarle al PHP que se comunique con las bases de datos.

Para instalar PHP5 solo debemos digitar el siguiente conjunto de instrucciones como siempre todo desde la consola:

# yum -y install php

Una vez que haya finalizado la instalacion es oportuno reinciar el servidor apache (web) con el propósito de que los cambios realizados por la instalacion en el servicio sean efectivos, usa el siguiente comando (ya conocido):

#  systemctl restart httpd.service

Comprobando si PHP5 esta correctamente instalado

Para poder probar la instalacion de nuestro lenguaje PHP y serciorarnos de que esta operativo necesitamos hacer lo siguiente:

Usando el editor vi (en lo particular uso mas el NANO, pero en la instalacion de Centos no lo trae por defecto, si desea usarlo puedes instalarlo con el comando # yum -y install nano) con el fin de crear un archivo con la extension .php el cual debe contener los comandos indicados:

# vi /var/www/html/info.php

dentro de este archivo colocamos las siguientes instrucciones del lenguaje PHP, el mismo que sera abierto a traves del navegador: para eso digita tecla ESC y la tecla INS

<?php
phpinfo();
?>

Una vez editado grabamos con los siguientes comandos de vi

ESC
:
!wq

Desde el navegador colocamos la URL que corresponda a nuestro servidor; asi:

http://192.168.1.111/info.php

Si logras ver la siguiente pantalla la instalacion ha concluido con exito..!

2016-07-21_19-23

Configurar el soporte entre PHP5 y MySQL (MariaDB)

Lo que necesitamos instalar primero es la aplicacion que conectará el PHP con el MySQL para ello usamos las siguientes instrucciones:

# yum -y install php-mysql

Despues de instalarse debemos instalar el conjunto de modulos requeridos por algunas aplicaciones CMS como WordPress, Joomla o Drupal, entre otros. Usaremos el siguiente conjunto de instrucciones en una sola linea de comando:

# yum -y install php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap curl curl-devel

Y como siempre debemos reiniciar las operaciones de apache para que todos los cambio hechos tomen efecto y los distintos modulos se activen en el apache.

# systemctl restart httpd.service

Al re-cargar nuevamente la pagina web de info.php y la compara con la craga anterior vera que algunos de los modulos indicado se veran en esta pagina sobre todo las librerias GD (para manejo de graficos) o LDAP asi:

En primera instancia antes de la instalacion de de módulos o complementos se vera asi:

2016-07-21_19-47

Aqui ya se pueden ver los complementos (LDAP como ejemplo) instalados despues de los comandos indicados:2016-07-21_19-48

Instalacion de phpMyAdmin

Finalmente y ya para terminar como nuestro servidor en el que hemos integrado un servidor de web APACHE junto con un Gestor de bases de datos MARIADB y el lenguaje que lo sostiene que en este caso es PHP5. Debemos buscar la manera de sacarle el maximo probecho ya sea programando aplicaciones web y conectadas a las bases de datos o en su defecto utilizar manejadores de Contenido ya listos (CMS) como WORDPRESS o OWNCLOUD .

Por lo tanto es conveniente para facilitarnos la creacion, gestion y administracion de las bases de datos instalar una herramienta “grafica” via web que nos permita hacer todo lo indicado: esa aplicacion se llama phpMyAdmin; para lo cual haremos lo siguiente:

Primero debemos instalar el respositorio donde se encuentra la aplicacion para ello indicamos las llaves correspondientes de EPEL (repo oficial) y luego instalamos el repoasi:

# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*
# yum -y install epel-release

desde la conosla escribimos el comnado siguiente para bajar e instalar la aplicacion:

# yum -y install phpMyAdmin

Ahora bien debemos hacer los cambios correspondientes en el archivo de configuracion de phpMyAdmin a fin de que podamos acceder a la aplicacion desde el navegador; si no se hace este procedimiento no funcionara, es mas se negara el acceso a dicha pagina, por lo tanto editamos el archivo asi:

# vi /etc/httpd/conf.d/phpMyAdmin.conf

y dentro debe quedar de la siguiente manera, pon atencion a los # ya que ellos comentaran las lineas de código que no queremos se ejecuten en el archivo de configuracion, asi:

[...]
Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin

#<Directory /usr/share/phpMyAdmin/>
#   AddDefaultCharset UTF-8

#   <IfModule mod_authz_core.c>
#     # Apache 2.4
#     <RequireAny>
#       Require ip 127.0.0.1
#       Require ip ::1
#     </RequireAny>
#   </IfModule>
#   <IfModule !mod_authz_core.c>
#     # Apache 2.2
#     Order Deny,Allow
#     Deny from All
#     Allow from 127.0.0.1
#     Allow from ::1
#   </IfModule>
#</Directory>

<Directory /usr/share/phpMyAdmin/>
        Options none
        AllowOverride Limit
        Require all granted
</Directory>

[...]

El resto del archivo debe quedar igual (intacto [. . .] ) y listo!!, grabamos las modificaciones al archivo y reiniciamos como siempre, el servidor apache:

# systemctl restart  httpd.service

Ahora podemos ingresar en el navegador colocando la URL de la siguiente manera (recuerda que la IP es la de tu servidor donde instalaste todo)

http://192.168.1.111/phpmyadmin

y finalmente veremos lo siguiente:

2016-07-21_20-30

Con todo esto hemos terminado..! 😀

facil verdad?