Menu
Icon

# 🚀 Guía Completa: Desplegar Laravel Filament en Namecheap.

{

Wey no subas todo al host como 
Resumen, solo compila y subi proyecto, no trates de subir los modulos mode o vendors xD



## 📋 Requisitos Previos

-   Hosting compartido de Namecheap con cPanel
-   PHP 8.1 o superior
-   MySQL 5.7 o superior
-   Acceso SSH (opcional pero recomendado)

## 🔧 Paso 1: Preparación Local

### 1.1 Construir el proyecto para producción

```bash
# Instalar dependencias de producción
composer install --optimize-autoloader --no-dev

# Instalar dependencias de Node.js
npm install

# Construir assets para producción
npm run build

# Optimizar Laravel
php artisan config:cache
php artisan route:cache
php artisan view:cache
```

### 1.2 Verificar la estructura de archivos

Asegúrate de que tengas esta estructura:

```
laravel-app/
├── app/
├── bootstrap/
├── config/
├── database/
├── public/
│   ├── build/
│   │   ├── assets/
│   │   │   ├── app-[hash].css
│   │   │   └── app-[hash].js
│   │   └── manifest.json
│   ├── index.php
│   └── .htaccess
├── resources/
├── routes/
├── storage/
└── vendor/
```

## 🌐 Paso 2: Configuración en cPanel

### 2.1 Crear base de datos

1. Accede a cPanel
2. Ve a "MySQL Databases"
3. Crea una nueva base de datos
4. Crea un usuario y asígnalo a la base de datos
5. Anota las credenciales

### 2.2 Configurar Document Root

1. Ve a "File Manager"
2. Navega a `public_html`
3. Asegúrate de que el Document Root apunte a `public_html`

## 📤 Paso 3: Subir archivos

### 3.1 Método 1: File Manager (Recomendado para principiantes)

1. Accede al File Manager de cPanel
2. Navega a `public_html`
3. Sube todos los archivos del proyecto
4. **IMPORTANTE**: Asegúrate de que `index.php` esté en `public_html`

### 3.2 Método 2: FTP/SFTP

1. Usa un cliente FTP como FileZilla
2. Conecta a tu servidor
3. Sube todos los archivos a `public_html`

### 3.3 Método 3: Git (Si tienes acceso SSH)

```bash
# En tu servidor
cd public_html
git clone tu-repositorio .
composer install --optimize-autoloader --no-dev
npm install
npm run build
```

## ⚙️ Paso 4: Configuración del archivo .env

Crea un archivo `.env` en la raíz del proyecto con esta configuración:

```env
APP_NAME="LaravelApp"
APP_ENV=production
APP_KEY=base64:tu-app-key-aqui
APP_DEBUG=false
APP_URL=https://tu-dominio.com

LOG_CHANNEL=stack
LOG_DEPRECATIONS_CHANNEL=null
LOG_LEVEL=error

DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=tu_base_de_datos
DB_USERNAME=tu_usuario
DB_PASSWORD=tu_contraseña

BROADCAST_DRIVER=log
CACHE_DRIVER=file
FILESYSTEM_DISK=local
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120

MEMCACHED_HOST=127.0.0.1

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

MAIL_MAILER=smtp
MAIL_HOST=mailpit
MAIL_PORT=1025
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS="hello@example.com"
MAIL_FROM_NAME="${APP_NAME}"

VITE_APP_NAME="${APP_NAME}"
```

## 🔐 Paso 5: Configurar permisos

En el File Manager de cPanel, configura estos permisos:

```bash
storage/ 755
bootstrap/cache/ 755
public/ 755
public/build/ 755
public/build/assets/ 755
.env 644
```

## 🗄️ Paso 6: Importar base de datos

### 6.1 Exportar desde local

```bash
# En tu proyecto local
php artisan db:export > database_backup.sql
```

### 6.2 Importar en Namecheap

1. Ve a cPanel → phpMyAdmin
2. Selecciona tu base de datos
3. Ve a la pestaña "Import"
4. Sube el archivo SQL
5. Haz clic en "Go"

## 🧪 Paso 7: Verificación

### 7.1 Verificar que la aplicación funciona

1. Visita tu dominio
2. Deberías ver la página de Laravel
3. Si hay errores, revisa los logs

### 7.2 Verificar que los assets se cargan

1. Abre las herramientas de desarrollador (F12)
2. Ve a la pestaña Network
3. Recarga la página
4. Verifica que no hay errores 404 en CSS/JS

### 7.3 Verificar la base de datos

1. Intenta hacer login
2. Verifica que las tablas se crearon correctamente
3. Revisa los logs si hay errores

## 🔧 Paso 8: Solución de problemas comunes

### Problema: Error 500

**Solución:**

1. Revisa los logs en `storage/logs/laravel.log`
2. Verifica que el archivo `.env` existe
3. Verifica los permisos de archivos
4. Verifica que la base de datos está configurada correctamente

### Problema: Vite no carga CSS/JS

**Solución:**

1. Verifica que los archivos están en `public/build/assets/`
2. Verifica que `manifest.json` existe
3. Verifica los permisos de archivos
4. Limpia el cache: `php artisan cache:clear`

### Problema: Página en blanco

**Solución:**

1. Habilita el debug temporalmente: `APP_DEBUG=true`
2. Revisa los logs de error
3. Verifica que PHP tiene las extensiones requeridas

### Problema: Error de base de datos

**Solución:**

1. Verifica las credenciales en `.env`
2. Verifica que la base de datos existe
3. Verifica que el usuario tiene permisos
4. Verifica que las tablas están creadas

## 📞 Soporte

Si tienes problemas:

1. **Revisa los logs:**

    - `storage/logs/laravel.log`
    - Logs de error de cPanel

2. **Contacta al soporte de Namecheap:**

    - Proporciona los logs de error
    - Describe el problema específico

3. **Verifica la documentación:**
    - Laravel: https://laravel.com/docs
    - Filament: https://filamentphp.com/docs

## ✅ Checklist final

-   [ ] Archivos subidos correctamente
-   [ ] Base de datos configurada
-   [ ] Archivo `.env` configurado
-   [ ] Permisos configurados
-   [ ] Assets de Vite construidos
-   [ ] Aplicación funciona
-   [ ] Login funciona
-   [ ] No hay errores en consola
-   [ ] CSS y JS se cargan correctamente

---

**¡Tu Laravel App debería estar funcionando en Namecheap! 🎉**

}

Utilizamos cookies propias y de terceros con finalidades analiticas y para mejorar tu experiencia de compras segun tus preferencias, mediante el analisis de tus habitos de navegacion y tu perfil. Puedes aceptar todas las cookies pulsando el boton "Aceptar" o gestionar tus preferencias en el panel de configuracion