# CPANEL_DEPLOY_FINAL.md

## Instrucciones para Despliegue en cPanel

### Requisitos del Servidor

- PHP 8.1 o superior
- MySQL 5.7+ / MariaDB 10.3+
- Apache con mod_rewrite habilitado
- HTTPS configurado (SSL)
- Extensiones PHP: PDO, pdo_mysql, mbstring, json, fileinfo, openssl

### Paso 1: Subir archivos

Opción A — Subir el paquete SIGMA_DEPLOY completo:

1. Comprimir `SIGMA_DEPLOY/` en ZIP
2. En cPanel → **File Manager** → Subir ZIP
3. Extraer en `public_html/` (o el directorio raíz del dominio)

Opción B — Subir por FTP:

```
public_html/  →  /home/USER/public_html/
api/          →  /home/USER/public_html/api/
database/     →  /home/USER/sigma_database/
docs/         →  /home/USER/sigma_docs/
```

### Paso 2: Configurar Base de Datos

1. cPanel → **MySQL Databases**
2. Crear BD: `sigma_coe_db`
3. Crear usuario: `sigma_user`
4. Asignar todos los privilegios
5. Ir a **phpMyAdmin**
6. Importar `database/schema_produccion.sql`
7. Importar `database/seed_produccion.sql`

### Paso 3: Configurar Variables de Entorno

Opción A — Archivo .env:
1. En `api/`, crear archivo `.env`
2. Copiar contenido de `docs/ENV_PRODUCTION_EXAMPLE.md`
3. Configurar valores reales (DB_HOST, DB_NAME, DB_USER, DB_PASS, etc.)
4. Guardar

Opción B — cPanel Environment Variables:
1. cPanel → **Environment Variables** (Software section)
2. Agregar cada variable

### Paso 4: Verificar Permisos

```bash
chmod 755 /home/USER/public_html/
chmod 644 /home/USER/public_html/index.html
chmod 755 /home/USER/public_html/api/uploads/
chmod 755 /home/USER/public_html/api/uploads/evidences/
chmod 644 /home/USER/public_html/api/.htaccess
chmod 644 /home/USER/public_html/.htaccess
```

### Paso 5: Verificar Funcionamiento

1. Abrir `https://sigma-coe.gob.ec/` → debe cargar el login
2. Verificar `https://sigma-coe.gob.ec/api/health` → debe responder JSON
3. Iniciar sesión con SuperAdmin
4. Verificar que los módulos cargan correctamente

### Paso 6: Configurar HTTPS

1. cPanel → **SSL/TLS**
2. Instalar certificado SSL (Let's Encrypt automático)
3. Forzar HTTPS desde `.htaccess`:

```apache
<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteCond %{HTTPS} off
  RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
</IfModule>
```

### Notas Importantes

- La carpeta `public_html/` contiene el frontend SPA.
- La carpeta `api/` contiene la API REST PHP.
- El archivo `.htaccess` en `public_html/` maneja el SPA fallback.
- El archivo `.htaccess` en `api/` maneja el enrutamiento API.
- Los uploads se almacenan en `api/uploads/evidences/`.
- `APP_DEBUG` debe ser `false` en producción.
