# 🚀 Instalación en HestiaCP - WhatsApp Bot Manager ## 📦 Archivo para HestiaCP - **Archivo:** `whatsapp_HESTIACP_READY_20260104_104546.zip` - **Optimizado para:** HestiaCP + hosting compartido/VPS - **Tamaño:** ~168KB ## 🔧 .htaccess Reparado para HestiaCP ### ✅ Mejoras Implementadas: - **Compatibilidad HestiaCP:** Sintaxis moderna (Require all denied) - **Seguridad avanzada:** Protección contra inyecciones SQL/XSS - **Rendimiento:** Compresión GZIP y cache optimizado - **APIs:** Headers específicos para WhatsApp webhook - **CSP:** Content Security Policy configurado ### 🛡️ Protecciones de Seguridad: - ✅ Archivos de configuración protegidos - ✅ Archivos .env bloqueados - ✅ Logs inaccesibles desde web - ✅ Tests bloqueados en producción - ✅ Headers de seguridad completos ## 📋 Instalación en HestiaCP ### 1. Acceso al Panel ```bash 1. Acceder a HestiaCP: https://tu-servidor:8083 2. Login con credenciales de admin 3. Ir a "Web" → Seleccionar dominio ``` ### 2. Subir Archivos ```bash 1. File Manager → public_html/ 2. Subir whatsapp_HESTIACP_READY_20260104_104546.zip 3. Extraer ZIP en public_html/ 4. Borrar archivo ZIP después ``` ### 3. Configurar Permisos en HestiaCP ```bash 1. En File Manager, seleccionar carpetas: - logs/ → Permisos 777 - uploads/ → Permisos 777 - config/ → Permisos 755 2. O por SSH: chmod 777 public_html/logs/ chmod 777 public_html/uploads/ chmod 644 public_html/.htaccess ``` ### 4. Crear Base de Datos ```bash 1. En HestiaCP → "DB" 2. Add Database: - Name: whatsapp_bot - User: whatsapp_user - Password: [generar segura] 3. Importar database/schema.sql ``` ### 5. Configurar config.php ```php // Editar public_html/config/config.php define('DB_HOST', 'localhost'); define('DB_NAME', 'usuario_whatsapp_bot'); // prefijo_nombre define('DB_USER', 'usuario_whatsapp_user'); // prefijo_usuario define('DB_PASS', 'tu_password_db'); define('DB_PORT', 3306); define('DB_CHARSET', 'utf8mb4'); ``` ## 🌐 Configuración Específica HestiaCP ### SSL/HTTPS (Recomendado) ```bash 1. En HestiaCP → "Web" → tu dominio 2. "Edit" → SSL → "Generate" (Let's Encrypt) 3. Activar "Force SSL redirect" 4. En .htaccess descomenta las líneas HTTPS ``` ### PHP Version ```bash 1. En HestiaCP → "Web" → Edit domain 2. "Advanced options" → PHP Version: 8.1+ 3. "Save" ``` ### Subdominio (Opcional) ```bash 1. En HestiaCP → "Web" → "Add Web Domain" 2. Domain: bot.tudominio.com 3. Mismo proceso de instalación ``` ## 🔑 Acceso al Sistema ### URLs de Acceso: - **Dashboard:** https://tudominio.com/ - **Login:** https://tudominio.com/login.php - **Verificador:** https://tudominio.com/verificar_servidor.php - **Webhook:** https://tudominio.com/api/webhook.php ### Credenciales: - **Usuario:** admin - **Contraseña:** 2fa904eee46f ## 🧪 Verificación Post-Instalación ### 1. Test básico ```bash 1. Ir a: https://tudominio.com/verificar_servidor.php 2. Verificar que todo esté en ✅ verde 3. Corregir cualquier ❌ error mostrado ``` ### 2. Test de login ```bash 1. Ir a: https://tudominio.com/login.php 2. Ingresar credenciales 3. Verificar acceso al dashboard ``` ### 3. Test de webhook ```bash 1. Verificar: https://tudominio.com/api/webhook.php 2. Debe mostrar: "Webhook endpoint activo" 3. Configurar URL en WhatsApp Business API ``` ## ⚙️ Configuración WhatsApp API ### En el Dashboard: ```bash 1. Login al sistema 2. Ir a "Configuraciones" 3. Completar: - WhatsApp Access Token - Phone Number ID - Business Account ID - Webhook Verify Token ``` ### En WhatsApp Business API: ```bash 1. Facebook Developers → App → WhatsApp 2. Configuration → Webhook URL: https://tudominio.com/api/webhook.php 3. Verify Token: (copiar del dashboard) 4. Suscribirse a: conversations, message_status ``` ## 🚨 Solución de Problemas HestiaCP ### Error 500 - Internal Server Error ```bash 1. Revisar error log en HestiaCP → Statistics → Error Log 2. Verificar permisos de archivos/carpetas 3. Comprobar sintaxis de .htaccess 4. Revisar versión PHP (requiere 7.4+) ``` ### Base de datos no conecta ```bash 1. Verificar credenciales en config/config.php 2. Comprobar prefijo de usuario/DB en HestiaCP 3. Verificar que DB esté en mismo servidor 4. Probar conexión desde File Manager ``` ### Headers de seguridad ```bash 1. Si hay conflicto con CSP, editar .htaccess 2. Ajustar Content-Security-Policy según necesidades 3. Para debugging, comentar temporalmente CSP ``` ### Webhook no recibe mensajes ```bash 1. Verificar URL pública accesible 2. Comprobar SSL activo 3. Revisar logs en HestiaCP 4. Test manual: curl -X POST https://tudominio.com/api/webhook.php ``` ## 📞 Soporte Específico HestiaCP **Documentación oficial:** https://docs.hestiacp.com/ **Panel de control:** Acceso vía puerto 8083 **Logs del sistema:** /var/log/hestia/ **PHP logs:** Panel → Statistics → Error Log ## 🎯 Optimizaciones HestiaCP ### Performance ```bash 1. Activar OPcache en PHP system_config 2. Configurar Redis/Memcached si disponible 3. Optimizar MySQL en HestiaCP system_config 4. Usar Cloudflare para CDN ``` ### Backup ```bash 1. HestiaCP → Backups → Schedule 2. Backup automático diario/semanal 3. Incluir: Web, DB, Mail 4. Almacenar en storage externo ``` ¡Sistema listo para funcionar en HestiaCP! 🚀