Saltar al contenido
ElevoCloud - Hosting en Chile ElevoCloud
← Volver al blog
Guías Desarrollo Web 8 de julio de 2026 5 min de lectura

Cómo Instalar Laravel en cPanel: Guía Paso a Paso para Desarrolladores

Laravel en hosting compartido es perfectamente posible si sabes configurarlo. El truco está en redirigir el Document Root a la carpeta /public y tener PHP 8.2 con las extensiones correctas.

Cómo Instalar Laravel en cPanel: Guía Paso a Paso para Desarrolladores

Cómo Instalar Laravel en cPanel: Guía Paso a Paso para Desarrolladores

Laravel tiene una reputación de ser complicado de instalar en hosting compartido. La mayoría de tutoriales asumen un VPS con acceso root. Pero si tienes un hosting cPanel con PHP 8.2+ y acceso SSH, puedes tenerlo funcionando en 20 minutos.

El proceso tiene tres partes: subir los archivos, instalar dependencias con Composer, y configurar el servidor para servir desde la carpeta /public.

¿Se puede instalar Laravel en hosting compartido con cPanel?

Sí, con tres condiciones:

  1. PHP 8.2 o superior — Laravel 11 requiere PHP 8.2 mínimo
  2. Acceso SSH — necesario para correr Composer y artisan
  3. Extensiones PHP habilitadas — BCMath, Ctype, Curl, DOM, Fileinfo, JSON, Mbstring, OpenSSL, PDO, Tokenizer, XML

En cPanel puedes verificar las extensiones desde Software > Select PHP Version. Si usas Elevocloud, todas las extensiones requeridas por Laravel están disponibles desde el panel.

Requisitos: PHP 8.2+, Composer, extensiones necesarias

Antes de subir nada, verifica la versión de PHP del dominio. En cPanel: Software > MultiPHP Manager, selecciona el dominio y asegúrate de que esté en PHP 8.2 o superior.

Para las extensiones: Software > Select PHP Version y activa las que falten de la lista de arriba. Los cambios aplican inmediatamente.

Composer lo instalamos directamente en el servidor via SSH (lo veremos en el Paso 2). No necesitas tenerlo en tu máquina local para este proceso.

Paso 1 — Subir Laravel al hosting vía FTP o File Manager

Hay dos caminos:

Opción A — Subir el ZIP: descarga Laravel desde laravel.com como ZIP, súbelo al File Manager de cPanel y extrae en la carpeta del dominio. Rápido, pero no incluye las dependencias de vendor/.

Opción B — Clonar desde Git (si tienes acceso SSH): git clone https://github.com/laravel/laravel.git mi-proyecto

La carpeta destino depende de cómo quieres instalar Laravel:

  • Como aplicación principal del dominio: sube a la raíz del dominio y después configuras el Document Root hacia /public
  • Como subdominio: crea el subdominio en cPanel primero, apúntalo a una carpeta, y sube Laravel ahí

Por defecto, cPanel sirve desde public_html/. Laravel necesita servir desde public_html/tu-proyecto/public/. Esto lo configuramos en el Paso 3.

Paso 2 — Instalar Composer via SSH en cPanel

Conéctate por SSH (cPanel lo permite desde Avanzado > Terminal o con tu cliente SSH habitual):

ssh tuusuario@tudominio.cl

Descarga e instala Composer localmente:

cd ~
curl -sS https://getcomposer.org/installer | php
mv composer.phar ~/bin/composer
chmod +x ~/bin/composer

Verifica que funcione:

composer --version

Ahora navega a la carpeta de tu proyecto Laravel e instala las dependencias:

cd public_html/tu-proyecto
composer install --no-dev --optimize-autoloader

El flag --no-dev excluye paquetes de desarrollo (testing, debugging) para producción. El proceso tarda entre 2 y 5 minutos dependiendo del servidor.

Paso 3 — Configurar el Document Root hacia /public

Este es el paso crítico. Laravel debe servir solo desde la carpeta /public — si el Document Root apunta a la raíz del proyecto, los visitantes pueden acceder a archivos sensibles como .env.

Opción A: usar subdominio con Document Root personalizado

En cPanel: Dominios > Subdominios (o Dominios en la versión nueva de cPanel). Crea el subdominio y en el campo Document Root escribe la ruta completa a la carpeta public/ de tu Laravel:

/home/tuusuario/public_html/tu-proyecto/public

Guarda. El subdominio servirá directamente desde /public sin ninguna configuración adicional.

Opción B: usar subdirectorio con .htaccess

Si quieres que Laravel responda en el dominio principal o en un subdirectorio, necesitas un .htaccess en public_html/ que redirija al public/ de Laravel:

RewriteEngine On
RewriteRule ^(.*)$ /tu-proyecto/public/$1 [L]

Este método es menos limpio y puede generar problemas con assets — la Opción A es preferible siempre que puedas usar un subdominio o dominio dedicado.

Paso 4 — Configurar el archivo .env

En la raíz del proyecto Laravel hay un archivo .env.example. Cópialo:

cp .env.example .env

Genera la clave de aplicación:

php artisan key:generate

Edita .env con los datos reales de la base de datos. Créala primero en cPanel (Bases de datos > Bases de datos MySQL) y toma nota del nombre de la BD, usuario y contraseña:

APP_NAME="Mi App"
APP_ENV=production
APP_KEY=base64:... (ya generada)
APP_DEBUG=false
APP_URL=https://miapp.midominio.cl

DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=usuario_nombrebd
DB_USERNAME=usuario_nombrebd
DB_PASSWORD=tu_contrasena

Importante: APP_DEBUG=false en producción. Con debug en true, los errores muestran rutas de archivos, credenciales y configuración del servidor.

Paso 5 — Correr migraciones con artisan

Con la base de datos configurada, corre las migraciones:

php artisan migrate

Si es una instalación fresca, también puedes usar --seed para cargar datos iniciales:

php artisan migrate --seed

Finalmente, optimiza la configuración para producción:

php artisan config:cache
php artisan route:cache
php artisan view:cache

Estos comandos cachean la configuración, las rutas y las vistas de Blade para mejorar el rendimiento.

Problemas comunes y cómo resolverlos

Error 500 al instalar Laravel en hosting

Causas más frecuentes:

  • .env no existe o tiene APP_KEY vacío → corre php artisan key:generate
  • La carpeta storage/ o bootstrap/cache/ no tiene permisos de escritura → chmod -R 775 storage bootstrap/cache
  • PHP no tiene las extensiones requeridas → revisa Select PHP Version en cPanel

'php artisan' no encontrado en PATH

Si al ejecutar php artisan recibes "command not found", el PATH de tu sesión SSH no incluye el PHP correcto. Usa la ruta completa:

/usr/local/bin/php8.2 artisan migrate

O crea un alias en ~/.bashrc:

alias php='/usr/local/bin/php8.2'

En cPanel puedes ver las rutas exactas de cada versión de PHP desde Software > Select PHP Version > Current PHP version.


¿Buscas hosting con PHP 8.2, SSH habilitado y Composer disponible? En Elevocloud los planes incluyen acceso SSH, PHP 8.x configurables por dominio y soporte técnico para developers. Ver planes de hosting para desarrolladores.

Seguir leyendo

Mas entradas del blog

Ver todas →
Escríbenos por WhatsApp