Instalación de Laravel en Windows 11

Por motivos irrelevantes para esta publicación, tuve que formatear mi notebook, y mientras instalaba todos mis programas, traté de crear un proyecto con Laravel, lo que me hizo enfrentarme a varios problemas.

Es cierto, la instalación de Laravel debería ser un proceso simple, de pocos pasos, pero también puede traer consigo los problemas, que tal vez alguno no te deja avanzar, así que quiero compartir una posible solución. Empecemos…

Programas a instalar

Principalmente tenemos:

  • Xampp
  • Composer
  • Node.js
  • Git

Xampp

Si bien existen otras alternativas como Wampp, en mi caso, yo voy a explicar esto con Xampp. Podés instalarte el programa desde la página de Apache friends:

https://www.apachefriends.org/es/index.html

(De preferencia la última estable hasta la fecha: PHP 8.2.12)

Una vez finalizado el proceso, abrí un símbolo de sistema o terminal y escribí:

php -v

Si por algún motivo te devuelve un error, entonces haremos lo siguiente:

Vamos a pulsar tecla Windows y a escribir «editar las variables de entorno del sistema»

Dentro de «Opciones avanzadas», hacemos clic en el botón «Variables de entorno» Luego al apartado «Variables del sistema», seleccionamos «Path» y luego en el botón «Editar»

Pulsamos en el botón «Nuevo» y guardamos la siguiente ruta: «C:\xampp\php» (Revisá que la carpeta PHP esté instalada en ese directorio) Guardamos todos los cambios.

Cerramos la terminal, la abrimos nuevamente y volvemos a probar:

php -v

Composer

Es un gestor de paquetes, así como npm, pero en este caso para PHP.

Nos dirigimos a la página de Composer:

https://getcomposer.org/

Descargamos el archivo .exe:

https://getcomposer.org/Composer-Setup.exe

Y lo instalamos.

Aunque también podemos hacer la instalación por consola como se indica en:

https://getcomposer.org/download/

Ahora, todo esto está muy bien, sin embargo es probable que en este punto te hayas encontrado con algún error.

En la mayoría de los casos puede ser que el antivirus esté bloqueando la instalación. Esto es algo común, podés desactivar temporalmente tu antivirus e intentar la instalación. Y una vez terminada, obviamente acordate de volverlo a activarlo, eso es mucho muy importante.

Node

Como bien sabemos (o te enterás ahora), una parte de Laravel usa node.js, esto permite la integración con otras tecnologías como React o Vue, para eso tenemos que tener instalado el programa desde:

https://nodejs.org/es

Una vez finalizado, vamos a probar los siguientes comandos por consola:

node -v

Y después:

npm -v

Puede ser que alguno de los dos te devuelva un error, en mi caso tuve problemas con el comando npm, importante para la instalación de Laravel. Entonces vamos a revisar dos cosas.

Primero probamos que exista dentro de nuestro sistema la variable de entorno:

Si ésta no existe, la agregamos «C:\Program Files\nodejs\»

Por último vamos a escribir en la consola lo siguiente:

Set-ExecutionPolicy Unrestricted

Luego repetimos el mismo proceso que hicimos con PHP, cerramos la consola, la volvemos a abrir y a probar ambos comandos.

Git

Instalamos git:

https://git-scm.com/

Este último probablemente lo tengas instalado, porque es el que nos permite subir nuestros proyectos a github.

Instalación de Laravel

Recordar que en este punto todo debe estar funcionando. Probar todo desde la consola:

php -v
composer -v
node -v
npm -v
git -v

Para hacernos más complicado el trabajo, tenemos que verificar lo siguiente:

Vamos a abrir Xampp y a hacer clic a la altura de «Apache» en «Config» Y a «PHP (php.ini)»

Una vez dentro buscamos lo siguiente: «extension=zip», si esta extensión tiene punto y coma delante («;extension=zip»), es decir que está comentada, le quitamos este caracter y guardamos el archivo.

Luego podemos proseguir a la instalación definitiva:

https://laravel.com/docs/12.x/installation

Empezamos por:

composer global require laravel/installer

Ingresamos en el directorio donde queremos crear nuestro proyecto, por ejemplo:

cd C:\xampp\htdocs

E instalamos el proyecto:

laravel new example-app

(Modificar «example-app» por el nombre que queramos ponerle a nuestro proyecto)

Nos va a dar la opción de instalar None, React, Vue o Livewire.

Yo me voy a inclinar por «livewire». Si no tenés mucha experiencia con Laravel te recomiendo «none».

Luego nos va a hacer preguntas como el método de autenticación, en este punto es irrelevante, yo voy elegir la primera: Laravel

También nos va a preguntar si queremos usar Laravel volt: yo voy a elegir «no».

También el framework de testing, yo voy a elegir el primero.

Comenzará la instalación…

Al finalizar nos va a preguntar si queremos instalar las dependencias de npm (node.js):

Le decimos que sí (yes)

Una vez finalizado podemos iniciar el servidor.

Primero ingresamos por consola dentro de nuestro proyecto:

cd example-app

Y una vez dentro escribimos lo siguiente:

composer run dev

Si todo salió bien nos va a indicar la URL en donde está corriendo nuestro localhost:

Si ingresamos en esa URL vamos a ver la bienvenida de Laravel.

Conectar a MySQL

En otra publicación veremos que son las migraciones o podés revisarlo desde la documentación de Laravel:

https://laravel.com/docs/12.x/migrations

Pero antes que nada, primero tenemos que tener iniciado el servidor de MySQL, desde el panel de control de Xampp, pulsamos en «Start»

Dentro de la raíz del proyecto que acabamos de crear, debería haber un archivo llamado: «.env», vamos a modificar las siguientes variables:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=tu_base_de_datos
DB_USERNAME=root
DB_PASSWORD=

(Completar los valores con tus datos de conexión)

Cuando termine vamos a entrar desde la consola (abrimos otra consola):

C:\xampp\htdocs\example-app

(Cambiar example-app por el nombre de nuestro proyecto)

Y escribimos:

php artisan migrate

Si la base de datos no está creada, les va a aparecer un mensaje: «The database ‘nombre_de_la_base_de_datos’ does not exist on the ‘mysql’ connection.»

Y nos va a preguntar si queremos crearla: «Would you like to create it? (yes/no) [yes]»

Ingresamos «yes» ¡y listo! Comenzará con la primer migración.