CREDITOS LT - BACKEND PARA CPANEL Contiene el código local actual del Backend, dependencias PHP de producción y public/build compilado. Laravel está en la raíz del ZIP, sin carpeta envolvente. Excluye Mobile, .env, node_modules, bases, fotos, respaldos, sesiones y logs. No necesitas Composer ni Node en el hosting. 1. Selecciona PHP 8.2.34 o posterior y habilita bcmath, ctype, curl, dom, fileinfo, gd, iconv, mbstring, openssl, pdo_mysql, simplexml, tokenizer, xml, xmlreader, xmlwriter, zip y zlib. 2. Extrae en la carpeta de la aplicación. El Document Root del dominio debe apuntar a esa carpeta/public. Solo public debe servirse por HTTP. 3. Instalación nueva: copia .env.cpanel.example como .env y configura dominio, credenciales de base, ADMIN_PASSWORD y RESPALDOS_DIRECTORIO fuera de public. Para trasladar una instalación existente, conserva su APP_KEY original, importa su base y copia storage/app/private desde un respaldo consistente. 4. En la terminal de cPanel, desde la carpeta de la aplicación: php artisan optimize:clear SOLO para una instalación nueva sin datos existentes: php artisan key:generate php artisan migrate --force php artisan administrador:sincronizar Para datos existentes, respalda la base y aplica migraciones pendientes: php artisan migrate --force No regeneres APP_KEY ni ejecutes migrate:fresh sobre datos existentes. Finalmente: php artisan config:cache php artisan view:cache 5. storage y bootstrap/cache necesitan escritura para el usuario PHP. Activa mostrar archivos ocultos: public/.htaccess está incluido. Las fotos privadas de cédulas no requieren storage:link. 6. Comprueba /up, /iniciar-sesion, logos, CSS/JS y conexión con la base. Para respaldos diarios, configura cada minuto el cron de schedule:run usando el PHP y la ruta de esta instalación. Requiere mariadb-dump o mysqldump y un directorio de respaldo escribible fuera de public. En una actualización, respalda primero y conserva .env y storage del servidor. Este ZIP no contiene los datos ni cambia automáticamente el hosting.