Montar y configurar proyecto existente de Laravel desde cero

En este post te describiré cómo montar un proyecto de Laravel en tu servidor de desarrollo. Lo hago para los clientes a los que les envío el código y necesitan una guía para hacerlo.

Este tutorial también sirve por si te has descargado un proyecto de Laravel y lo quieres colocar en tu servidor de desarrollo.

Por cierto, este tutorial va enfocado a usar Laravel con Apache en Windows.

Explicación rápida de un proyecto de Laravel

Laravel tiene varias dependencias que están dentro de vendor. Digamos que son librerías y código de terceros para que el framework funcione. Estas dependencias las descarga Composer y no deberían compartirse.

El verdadero código está mayormente en app y routes.

No hay esquema de base de datos; todo se hace a través de migraciones que se encuentran dentro de database.

Al hacer las migraciones se crean las tablas y en ocasiones se ingresan datos como el primer usuario o cosas similares.

La mayoría de cosas se hacen con composer y artisan, usando la línea de comandos. Así que es necesario tener composer y php en la PATH.

Instalando herramientas

Entonces vas a necesitar PHP, Apache, MySQL y composer. PHP es el lenguaje de programación, Apache es el servidor web que procesará las solicitudes pasándolas a PHP, MySQL el gestor de base de datos y composer el gestor de dependencias.

En mi blog ya tengo el tutorial para instalar XAMPP que contiene las primeras 3 herramientas, te recomiendo ir al mismo y descargar la última versión, ya que el post fue hecho con la versión 7 pero al descargar XAMPP se descargará la última versión.

Si dejas todo como está, entonces PHP quedará en C:\xampp\php\. Guarda esa ruta porque luego tienes que agregarla a la PATH como se indica en este tutorial.

En cuanto a MySQL no es necesario agregarlo a la path, solo basta con instalarlo, y se instala automáticamente con XAMPP (recuerda instalar phpmyadmin igualmente). Si incluso así quieres tenerlo, agrega la carpeta C:\xampp\mysql\bin\ a la PATH.

Luego debes instalar composer, que es el gestor de dependencias. Ya tengo un tutorial de cómo instalarlo aquí.

Ahora abre un nuevo símbolo del sistema o CMD y ejecuta:

php -v

Luego ejecuta (la V es mayúscula en este caso):

composer - V

Y debe salir algo como lo siguiente:

Si te dice “…  no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable” es porque no agregaste la o las carpetas a la PATH o no has guardado cambios.

Importando proyecto

Nota: para el ejemplo supondré que la carpeta se llama mentores. No olvides cambiar el nombre en los siguientes puntos si tu proyecto tiene otro nombre.

Debes colocar el proyecto en una nueva carpeta de htdocs, por ejemplo si el proyecto se llama mentores entonces debe estar en C:\xampp\htdocs\mentores y dentro debe tener la carpeta app, bootstrap, etcétera.

A partir de aquí los comandos se deben ejecutar en la carpeta del proyecto, así que debes cambiar a ella con:

cd C:\xampp\htdocs\mentores

Y el prompt debe cambiar. Al pedir un comando debe decir:

C:\xampp\htdocs\mentores>

Ahora puedes elegir 2 cosas, una es la manera correcta y otra la manera fácil que puede traer más errores.

La manera correcta

Si lo hacemos a la manera Laravel, entonces:

  • Ejecutamos composer install para instalar las dependencias.
  • Creamos el archivo .env que debe ser hermano (y su contenido debe ser igual al) del archivo .env.example
  • Abrimos phpmyadmin o la consola de MySQL y creamos una nueva base de datos. A la mía la llamaré mentores.
  • En el archivo .env, dentro de DB_DATABASE ponemos el nombre de nuestra base de datos. En mi caso queda así porque se llama mentores (línea 14):
  • Volvemos a la terminal y ejecutamos php artisan migrate --seed. Ese comando va a migrar la base de datos (crear tablas) y alimentarla. Si te da errores puede que sea porque no has configurado la base de datos en el archivo .env. Debe decir algo así:
  • En la misma terminal generamos una clave para nuestro proyecto con php artisan key:generate. Debe decir algo como Application key set successfully
  • Luego de eso ejecutamos php artisan storage:link para crear algunos enlaces con el almacenamiento y la carpeta pública. Debe decir algo como The links have been created.
  • Visitamos http://localhost/mentores/public/ y debe aparecernos la app.
  • (este punto solo es para algunos proyectos que son míos) Ya puedes iniciar sesión con el usuario administrador por defecto, cuyas credenciales puedes ver en database\seeders\PrimerUsuarioSeeder.php

Nota importante: si aparece un error recomiendo buscar su solución en Google. A veces solo hay que hacer un composer update, actualizar la versión de PHP, revisar la conexión de internet, etcétera y no tienen nada que ver con el proyecto en sí, sino con el entorno.

La manera fácil

Si no quieres instalar las dependencias ni hacer las migraciones entonces puedes solicitarme el proyecto con las dependencias instaladas (obviamente solo si me has contratado para ese proyecto, en otro caso, no), el archivo .env, los enlaces y un archivo .sql que vas a importar en MySQL.

La instalación de todo XAMPP igual la debes hacer, solo te ahorras los comandos. El proyecto queda en las mismas carpetas y se abre en la misma ruta del navegador, además de que igualmente debes crear la base de datos como lo diga el .env.

Conclusión

Espero que este artículo te haya servido o te haya aclarado ciertas dudas.

Para terminar te dejo con otro post que te dice qué hacer después de clonar un proyecto de Laravel y más tutoriales y sistemas de Laravel en mi blog.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario