Saltar al contenido principal

Introducción

Para desarrollar Laravel en Windows, la mejor práctica es usar WSL (Windows Subsystem for Linux). Como puedes usar tal cual la toolchain de Linux, los mismos comandos funcionan igual que en macOS o en el servidor de producción. En esta guía se explica cómo instalar PHP, Composer y Node.js (mediante nvm) sobre Ubuntu en WSL 2 hasta llegar al punto en que laravel new funcione.
Entorno objetivo: Windows 10 (versión 2004 o superior) o Windows 11. Se usa WSL 2.

Instalación de WSL

1

Abre PowerShell como administrador

Busca “PowerShell” en el menú de inicio y elige “Ejecutar como administrador”.
2

Instala WSL y Ubuntu

wsl --install
Con este comando se instalan WSL 2 y Ubuntu (la distribución por defecto). Al terminar, reinicia el PC.
3

Configura Ubuntu

Tras reiniciar, Ubuntu se inicia automáticamente. Configura nombre de usuario y contraseña. Esta contraseña se usa con el comando sudo.
La contraseña no se muestra en pantalla mientras la escribes. Escríbela con cuidado.
4

Actualiza la lista de paquetes

En la terminal de Ubuntu, ejecuta lo siguiente.
sudo apt update && sudo apt upgrade -y

Instalación de PHP

Los repositorios estándar de Ubuntu pueden incluir versiones antiguas de PHP. Instala la versión más reciente usando el PPA ondrej/php.
1

Instala los paquetes necesarios

sudo apt install -y software-properties-common
2

Añade el PPA ondrej/php

sudo add-apt-repository ppa:ondrej/php
sudo apt update
3

Instala PHP 8.3 y las extensiones necesarias

Laravel 13 requiere PHP 8.3 o superior.
sudo apt install -y php8.3 php8.3-cli php8.3-mbstring php8.3-xml php8.3-curl php8.3-zip php8.3-sqlite3 php8.3-mysql
4

Verifica la versión

php --version
Si se muestra PHP 8.3.x o superior, la instalación es correcta.
5

(Opcional) Cambiar entre varias versiones

Si necesitas varias versiones de PHP, puedes alternarlas con update-alternatives.
sudo update-alternatives --config php
Aparecerá la lista de versiones instaladas; introduce el número de la versión que quieras usar.

Instalación de Composer

Se instala Composer usando el instalador oficial.
1

Comprueba los paquetes necesarios

sudo apt install -y curl php8.3-cli unzip
2

Descarga y ejecuta el instalador oficial

curl -sS https://getcomposer.org/installer -o /tmp/composer-setup.php
sudo php /tmp/composer-setup.php --install-dir=/usr/local/bin --filename=composer
3

Verifica la versión

composer --version
4

Configura la ruta de la instalación global

Añade ~/.composer/vendor/bin al PATH para poder usar paquetes instalados con composer global require (como el instalador de Laravel).Añade la siguiente línea a ~/.bashrc (o ~/.zshrc).
export PATH="$HOME/.composer/vendor/bin:$PATH"
Aplica la configuración.
source ~/.bashrc

Instalación de nvm

Node.js se instala por usuario mediante nvm (Node Version Manager). Como se puede gestionar sin sudo, encaja bien con herramientas de IA o CLIs que usan paquetes npm globales.
1

Instala nvm

El script de instalación más reciente se puede consultar en el repositorio de GitHub de nvm.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
2

Añade líneas al archivo de configuración del shell

El script de instalación añade automáticamente lo siguiente a ~/.bashrc. Si no se añade, hazlo manualmente.
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"
Aplica la configuración.
source ~/.bashrc
Si usas zsh, añade lo mismo en ~/.zshrc y aplícalo con source ~/.zshrc.
3

Verifica la instalación

nvm --version

Instalación de Node.js

1

Instala la versión LTS

nvm install --lts
2

Establece como predeterminada

Para que se use automáticamente también en sesiones de terminal nuevas, establece la versión por defecto.
nvm alias default node
3

Verifica las versiones

node --version
npm --version

Verificar la instalación de Laravel

1

Instala el instalador de Laravel

composer global require laravel/installer
2

Crea un nuevo proyecto

laravel new my-app
Se inicia una configuración interactiva. Podrás elegir starter kit, autenticación, etc.
3

Arranca el servidor de desarrollo

cd my-app
php artisan serve
Accede en el navegador a http://localhost:8000; si aparece la página de bienvenida de Laravel, ya está listo.
Si no puedes acceder a localhost desde el navegador de Windows estando en WSL, intenta arrancarlo con php artisan serve --host=0.0.0.0.

Extra: herramientas para mejorar la eficiencia del desarrollo

Windows Terminal

Con Windows Terminal puedes gestionar de forma unificada WSL, PowerShell y Command Prompt en varias pestañas. Se instala gratis desde Microsoft Store.
  • Operar varios shells en paralelo mediante pestañas
  • Se puede establecer el shell de Ubuntu como predeterminado
  • Fuente y colores libremente personalizables

Extensión Remote - WSL de VS Code

Con la extensión Remote - WSL de VS Code puedes editar archivos dentro de WSL directamente desde el VS Code de Windows.
# Abrir el proyecto en VS Code desde la terminal de WSL
code .
En la primera ejecución se instala automáticamente el VS Code Server dentro de WSL. A partir de ahí, puedes trabajar con una experiencia equivalente a la nativa.
Última modificación el 13 de julio de 2026