Cargando



Cómo instalar Laravel PHP Web Framework en CentOS

Tutorial para instalar el framework de Laravel PHP Web en CentOS o RedHat 6 y 7 de Linux.


ago 02 2018 10:39
Profesional
Total de Apartados : 7

El mundo de la programación requiere de aplicaciones que se adapten a su dinamismo, complejidad y escalabilidad diaria ofreciendo soluciones que integren parámetros como compatibilidad, soporte, sencillez, pero robustez de uso y versatilidad.
Existen diversas opciones para los distintos lenguajes de programación donde uno de los más usados y destacados a nivel mundial es PHP y para ello contamos con un framework que impulsará aún mucho más el uso y las posibilidades que PHP ofrece y es Laravel.

 

Solvetic explicará en detalle como instalar Laravel en CentOS 7 para así contar con una herramienta poderosa para ejecutar e implementar PHP.

 

Qué es Laravel
Laravel ha sido desarrollado como un framework de aplicaciones web el cual posee una sintaxis expresiva, simple y moderna ya que permite que las tareas tradicionales de programación como como son la autenticación, el enrutamiento, las sesiones y el almacenamiento en caché, sea algo simple de usar de forma central abarcando cada aspecto para que ninguno falle.

 

Laravel combina lo mejor de otros frameworks existentes donde se incluyen los que son especiales para otros lenguajes de programación como Ruby on Rails, ASP.NET MVC y Sinatra. Al usar Larevel, contamos con un framework que nos aporta todas las herramientas necesarias para crear y administrar aplicaciones grandes y robustas ya que cuenta con contenedores de control, un sistema de migración expresivo y un nuevo soporte de prueba de unidades integrado para facilitar la construcción de cualquier aplicación requerida.

 

Características de Laravel
Dentro de las características más destacadas de Laravel encontramos:
  • Autenticación: Laravel cuenta con una autenticación incorporada simple que se puede integrar fácilmente a cualquier aplicación Laravel ejecutando algunos comandos básicos.
  • Almacenamiento en caché: El almacenamiento en caché es usado para almacenar datos de forma temporal durante un tiempo para poder recuperarlo de forma rápida, de modo que al usar almacenamiento en caché se puede reducir la carga en el servidor de la base de datos. Laravel cuenta con una API expresiva y unificada con el fin de interactuar con los diversos backends de almacenamiento en caché tales como Memcached y Redis.
  • Lógica de aplicación. Al usar Laravel, la lógica de la aplicación está escrita en Controladores o directamente en las rutas.
  • Paginación automática: Laravel cuenta con páginas incorporadas que eliminan el proceso de escribir código para los registros de paginación asignados.
  • Método o Inyección de Dependencia: Los contenedores de servicios de Laravel cuentan con una herramienta diseñada para administrar dependencias de clases y realizar inyecciones de dependencia en la aplicación.
  • Enrutamiento: Cuando usamos Laravel, el enrutamiento se usa para adjuntar URL de aplicaciones a una acción o vista de controlador específica.

 

Algunas características adicionales son:

 

  • Admite un mecanismo de autenticación simple.
  • Soporta la transmisión de eventos en tiempo real.
  • Cuenta con una API unificada en múltiples backends de cola donde se integran Amazon SQS y Redis y más, para el almacenamiento de la sesión y el caché.
  • Compatible con migraciones independientes de bases de datos y generador de esquemas.
  • Admite el procesamiento de trabajos en segundo plano.

 

Requisitos del servidor
Para instalar de forma correcta Laravel, será necesario cumplir con los siguientes requisitos:
  • PHP >= 7.1.3
  • Extensión OpenSSL PHP
  • Extensión PDO PHP
  • Extensión Mbstring PHP
  • Extensión Tokenizer PHP
  • Extensión XML PHP
  • Extensión Ctype PHP
  • Extensión JSON PHP

 

Ahora vamos a ver como instalar Laravel en CentOS 7.

 

 


1. Configurar los repositorios Yum en CentOS 7 y RedHat


El primer paso que dar consiste en habilitar los repositorios REMI y EPEL en CentOS con el fin de contar con los paquetes actualizados como son PHP, Nginx, MariaDB, y más, para ello vamos a usar los siguientes comandos:

 

En CentOS/RHEL 7
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

1-Configurar-los-repositorios-Yum-en-CentOS-7-y-RedHat.png

 

 

En CentOS/RHEL 6
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

 


2. Instalar Nginx en CentOS 7 y RedHat


Ahora vamos a instalar un entorno de trabajo LEMP en CentOS 7, en caso de no contar con ella, vamos a instalarla ejecutando los siguientes comandos:
yum install nginx

2-Instalar-Nginx-en-CentOS-7-y-RedHat.png

 

Nota
LEMP es un grupo de software en el cual se pueden alojar páginas web dinámicas y aplicaciones web. Es un acrónimo que describe un sistema operativo Linux, con un servidor web Nginx, los datos del backend se almacenan en la base de datos MySQL y el procesamiento dinámico es manejado por PHP.

 

Ingresamos la letra y para confirmar la descarga e instalación de Nginx. Una vez instalado Nginx, vamos a iniciar el servidor web y configurarlo para que se ejecute al arrancar el sistema operativo y luego d esto, vamos a verificar el estado con los siguientes comandos:

 

En CentOS/RHEL 7
systemctl start nginx
systemctl enable nginx
systemctl status nginx

3-descarga-e-instalación-de-Nginx.png

 

 

En CentOS/RHEL 6
Para poder contar con acceso a Nginx desde una red pública, será necesario abrir el puerto 80 en el firewall de CentOS 7 con el fin de recibir solicitudes externas, para realizar esta habilitación del puerto, vamos a ejecutar lo siguiente.
service nginx start  
chkconfig nginx on
service nginx status

 

En CentOS/RHEL 7
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --reload

4-contar-con-acceso-a-Nginx.png

 

 

En CentOS/RHEL 6
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
service iptables restart

 


3. Instalar MySQL en CentOS 7 y RedHat

 

Paso 1

El siguiente paso que dar será la instalación de MySQL para la gestión de las bases de datos, para ello vamos a ejecutar los siguientes comandos:
yum install mariadb-server php-mysql

5-instalación-de-MySQL.png

 

Paso 2

Ingresamos la letra y para confirmar la descarga e instalación. Procedemos a iniciar el servicio de MySQL:
systemctl start mariadb.service
Paso 3

Aseguramos la instalación de MySQL. Allí respondemos las preguntas en base a la necesidad, pero por lo general todas son afirmativas.
/usr/bin/mysql_secure_installation

6-iniciar-el-servicio-de-MySQL.png

 

 


4. Instalar PHP en CentOS 7 y RedHat

 

Paso 1

Ahora, vamos a instalar el lenguaje PHP en CentOS 7 y para ello ejecutamos los siguientes comandos en su orden:
yum install yum-utils
yum-config-manager --enable remi-php72
yum install php php-fpm php-common php-xml php-mbstring php-json php-zip

7-Instalar-PHP-en-CentOS-7-y-RedHat.png

 

Paso 2

Ingresamos la letra y para aceptar la descarga e instalación. Ahora, vamos a habilitar y configurar PHP para que se ejecute en el arranque de CentOS 7:

 

En CentOS/RHEL 7
systemctl start php-fpm
systemctl enable php-fpm
systemctl status php-fpm

8-habilitar-y-configurar-PHP.png

 

 

En CentOS/RHEL 6
service php-fpm start  
chkconfig php-fpm on
service php-fpm status

 


5. Instalar Composer y Laravel PHP Framework en CentOS 7 y RedHat

 

Paso 1

Ahora vamos a instalar Composer junto a las dependencias de PHP y Laravel ejecutando los siguientes comandos:
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
chmod +x /usr/local/bin/composer

9-Instalar-Composer-y-Laravel-PHP-Framework.png

 

Paso 2

Una vez se haya instalado Composer, vamos a instalar Laravel ejecutando el comando "create-project" del compositor así:
cd /var/www/html/
sudo composer create-project --prefer-dist laravel/laravel testsite

10-instalar-Composer-junto-a-las-dependencias-de-PHP.png

 

Paso 3

Ahora, cuando vamos a verificar el directorio de prueba “testsite” y comprobar que debe existir allí, conteniendo los archivos Laravel, para ello ejecutamos:
ls -l /var/www/html/testsite

11-verificar-el-directorio-de-prueba-testsite.png

 

 


6. Configurar la instalación de Laravel en CentOS 7 y RedHat

 

Paso 1

Ahora vamos a configurar los permisos apropiados tanto en los archivos como en el directorio creado así:
chmod -R 775 /var/www/html/testsite
chown -R apache.apache /var/www/html/testsite
chmod -R 777 /var/www/html/testsite/storage/

12-Configurar-la-instalación-de-Laravel-en-CentOS-7-y-RedHat.png

 

Paso 2

También, en caso de contar con SELinux habilitado, será necesario actualizar el contexto de seguridad de los directorios de almacenamiento y de arranque/caché con los siguientes comandos:
semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/testsite/bootstrap/cache(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/testsite/storage(/.*)?'
restorecon -Rv '/usr/share/nginx/html/testapp'
Paso 2

Ahora, vamos a crear un archivo de entorno para la aplicación, ejecutamos la siguiente sintaxis:
cp .env.ejemplo .env
Paso 3

Luego de esto, Laravel hace uso de una clave de aplicación con el fin de asegurar sesiones de usuario y otros datos cifrados, será necesario generar y establecer la clave de aplicación en una cadena aleatoria usando el siguiente comando:
php artisan key:generate

7. Configurar el bloque de servidor Nginx para Laravel en CentOS 7 y RedHat

 

Paso 1

Este se debe crear para configurar un bloque de servidor Nginx para el sitio de prueba creado, con el fin de acceder a él desde un navegador web, para ello vamos a crear un archivo .conf en el directorio /etc/nginx/conf.d/ usando el editor deseado así:
nano /etc/nginx/conf.d/testsite.conf
Paso 2

Allí pegaremos lo siguiente:
server {
listen	  80;
server_name (nombre_dominio.com);
root	    /var/www/html/testsite/public;
index	   index.php;
charset utf-8;
gzip on;
gzip_types text/css application/javascript text/javascript application/x-javascript image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php {
include fastcgi.conf;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}

13-Configurar-el-bloque-de-servidor-Nginx-para-Laravel-en-CentOS-7.png

 

 

Paso 3

Guardamos los cambios usando la combinación de teclas siguiente:

 

 

Ctrl + O

 

Salimos del editor usando:

 

Ctrl + X

 

 

Paso 4

Reiniciamos el servicio de Nginx:
systemctl restart nginx
Acceso a Larevel
Paso 5

Ahora podemos ir a algún navegador e ingresar el nombre de dominio o la dirección IP de CentOS 7 para acceder a la información de Larevel. Desde allí podremos acceder a la documentación, noticias y demás.

 

 

 

 

 

Así, hemos configurado Larevel para una gestión completa de PHP en CentOS 7.

 

Tutorial con vídeo sobre cómo instalar la versión estable PHP 5.6 para la compatibilidad de aplicaciones en CentOS 7 de Linux.


¿Te ayudó este Tutorial?


Sin comentarios, sé el primero!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

X