# 🚀 Guía de Despliegue en cPanel - API MDM Valmorca

Esta guía describe los pasos para instalar y activar la API en el subdominio `https://api.valmorca.com.ve`.

---

### Paso 1: Crear e Importar Base de Datos MySQL
1. En tu **cPanel**, ve a **Bases de datos MySQL**:
   * Crea la base de datos: `valmorca_mdm` (o el prefijo asignado por cPanel).
   * Crea un usuario MySQL (ej. `valmorca_usr`) y asígnale **Todos los privilegios** sobre la base de datos.
2. Abre **phpMyAdmin**:
   * Selecciona la base de datos recién creada.
   * Pestaña **Importar** -> Selecciona el archivo `schema_mysql.sql` incluido en este paquete.
   * Haz clic en **Importar**.

---

### Paso 2: Subir y Descomprimir el Código
1. En cPanel, abre el **Administrador de Archivos** (File Manager).
2. Crea el directorio para la API (por ejemplo en `/home/usuario/api.valmorca.com.ve` o en la raíz acordada).
3. Sube el archivo `valmorca-backend-api-production.zip` y dale **Extraer**.
4. Renombra el archivo `.env.production` a **`.env`**.
5. Abre el archivo `.env` y ajusta los datos de conexión MySQL:
   * `database.default.database`
   * `database.default.username`
   * `database.default.password`

---

### Paso 3: Apuntar el Subdominio a la Carpeta `public/`
* En cPanel -> **Dominios** / **Subdominios**:
  * Apunta el DocumentRoot de `api.valmorca.com.ve` hacia la subcarpeta:
    `.../api.valmorca.com.ve/public`
  * *(Esto protege los archivos del núcleo PHP, código fuente y base de datos impidiendo accesos no autorizados).*

---

### Paso 4: Permisos de Escritura en Carpetas de Caché
Asegúrate de que el usuario web tenga permisos de escritura (`775` o `755`) en:
* `writable/cache/`
* `writable/logs/`
* `writable/session/`

---

### Paso 5: Regla de Firewall On-Premise (SQL Server JDE)
* Comunica al administrador de redes de Valmorca la **IP pública de salida** de tu servidor cPanel.
* Se debe permitir el tráfico entrante desde dicha IP hacia el puerto **1433** del servidor SQL Server (`192.50.25.244`).

---

### Paso 6: Verificación y Certificación
Puedes probar que la API esté respondiendo ejecutando:
```bash
# Desde cualquier equipo con internet:
curl -H "Authorization: Bearer TU_SECRETO_BEARER_TOKEN_SUPER_SEGURO_2026" https://api.valmorca.com.ve/api/viajes/disponibles
```
O ejecutando el test runner desde tu consola:
```bash
node backend-api/test_runner.js --url=https://api.valmorca.com.ve/api
```
