Instale y aloja a Laravel en Ubuntu 18.04 Bionic Beaver Linux

Instale y aloja a Laravel en Ubuntu 18.04 Bionic Beaver Linux

Objetivo

Instale Laravel con Nginx y Mariadb en Ubuntu 18.04

Distribuciones

Ubuntu 18.04 Beaver Bionic

Requisitos

Una instalación en funcionamiento de Ubuntu 18.04 con privilegios de raíz

Dificultad

Fácil

Convenciones

  • # - requiere que los comandos de Linux dados se ejecuten con privilegios raíz directamente como un usuario raíz o mediante el uso de sudo dominio
  • ps - Requiere que los comandos de Linux dados se ejecuten como un usuario regular no privilegiado

Introducción

Laravel tan rápidamente ganó su lugar como el marco de PHP superior. Trajo muchas características amigables para los desarrolladores que se encuentran en otros marcos como Rails al ecosistema PHP, y al hacerlo, el desarrollo de PHP modernizado.

Si está buscando desarrollar con Laravel o alojarlo en Ubuntu 18.04, el proceso de configuración nunca ha sido más fácil. Dado que Laravel es PHP, hay un par de formas de manejar esto, pero Nginx y MariadB proporcionan una forma bastante directa de ejecutar su proyecto con herramientas modernas listas para la producción.

Instalar los paquetes

Antes de que pueda comenzar a configurar todo, hay algunos paquetes que necesitará. Todos están disponibles en los repositorios de Ubuntu, y todos están bastante actuales en biónico, por lo que no hay razón para buscar en otro lugar.

$ sudo apt instalación composer php-mysql php-fpm php-mbstring php-tokenizer php-xml php-json php-common nginx mariadb-server

Ellos entrarán más, pero no será tan malo.



Crea tu proyecto Lavavel

Lo siguiente que tendrá que hacer es comenzar su proyecto Laravel. Esta tampoco es una tarea demasiado grande. El paquete compositor que instaló más temprano maneja casi todo para usted y le dará una instalación funcional de Laravel fuera de la caja.

Comience cambiando el directorio a su /var/www/ directorio. Dado que esto se servirá con Nginx, ese es el mejor lugar para organizar sus sitios.

$ cd /var /www

A continuación, use el compositor para crear su proyecto. El nombre al final es el nombre de su proyecto y la carpeta que lo contiene. Elige en consecuencia.

$ sudo composer create-project-prefer-dist laravel/laravel yourproject
Instale Laravel con compositor en Ubuntu 18.04

El compositor descargará e instalará automáticamente todas las dependencias de PHP junto con Laravel y las establecerá. Antes de que pueda comenzar a trabajar y servir su proyecto, cambie la propiedad de Nginx.

$ sudo chown -r www-data: www-data yourproject

Configure su base de datos

A continuación, necesitará configurar su base de datos. Antes de comenzar a agregar cualquier cosa, asegure su servidor.

$ sudo mySQL-Secure-Install

Visite, configure su contraseña de root y use sus valores predeterminados seguros.

Ahora, puede iniciar sesión en Mariadb y configurar su base de datos para que Laravel lo use.

$ sudo mysql -u root -p

Una vez que esté dentro, comience creando su base de datos.

> Crear base de datos Laravel;

Luego, cree un usuario para usar esa base de datos.

> Crear usuario 'usuario'@'localhost' identificado por 'YourPassword';

Dé a ese usuario permiso para usar esa base de datos.

> Otorgar todo en Laravel.* A 'user'@'localhost';

Finalmente, enjuague los privilegios y la salida.

> Privilegios de descarga;


Conectar laravel

De forma predeterminada, Laravel está configurado para usar MySQL (mariadb), pero debe darle la información correcta para conectarse a la base de datos que acaba de configurar.

Configurar la base de datos de Laravel en Ubuntu 18.04

Continúe y cambie en el directorio donde instaló Laravel. Verás un configuración carpeta allí. Dentro de esa carpeta hay un archivo de configuración de la base de datos. Abierto configuración/base de datos.php. Desplácese hacia abajo para encontrar el bloque MySQL como el que se muestra arriba. Cambie el nombre de la base de datos, el nombre de usuario y la contraseña para que coincidan con los que configura. Entonces, guarda y salga.

Configurar nginx

La pieza final del rompecabezas es nginx. Esa es la parte que realmente servirá a su sitio. Cambie a /etc/nginx. En esa carpeta, encontrará toda la configuración de Nginx. No necesitas meterte con nada de eso. Puedes ajustar las opciones en nginx.confusión Si elige, pero no es necesario hacer que Laravel funcione.

Hay dos carpetas a las que debe prestar atención. Ellos son sitios y sitios habilitados. sitios disponibles contiene todas las configuraciones de su sitio. Para comenzar a servir un sitio, cree un enlace suave a la configuración del sitio en habilitado por el sitio. Actualmente, solo hay una entrada. Eliminarlo de ambas carpetas. Luego, cree una nueva entrada en sitios disponibles para tu proyecto.

Abra su nueva configuración de sitio en su editor de texto y configúrelo para parecerse a lo siguiente.

servidor escuchar 80; escuchar [::]: 80; servidor_name su sitio.com root/var/www/yourproject; índice índice.php; ubicación / try_files $ uri $ uri / / index.php?$ QUERY_STRING; 
Copiar

Cuando todo refleje su servidor, guarde y salga. Ahora, puede reiniciar Nginx para que los cambios entren en vigencia.

$ sudo systemctl reiniciar nginx

Puede navegar al nombre del servidor que especificó a Nginx para ver su sitio.

Pensamientos de cierre

Laravel es extremadamente poderoso, y esta configuración puede llevar a una excelente configuración de desarrollo o al comienzo de un servidor de producción. Ciertamente hay más que puede hacer con Laravel y Nginx, así que no dude en explorar diferentes opciones de configuración en una máquina de desarrollo.

Tutoriales de Linux relacionados:

  • Cosas para instalar en Ubuntu 20.04
  • Ubuntu 20.04: WordPress con instalación de Nginx
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Cosas para instalar en Ubuntu 22.04
  • Cómo verificar el estado de Nginx en Ubuntu
  • Cómo cambiar la contraseña de usuario de mariadb
  • Cómo crear una pila de lámparas basada en Docker usando Docker en ..
  • Ubuntu 20.04 Guía
  • Cómo instalar Nginx en Linux
  • Una introducción a la automatización, herramientas y técnicas de Linux