# 🚀 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! 🎉**
Comentarios
Publicar un comentario