FAQ
Respuestas rápidas a las preguntas que surgen con más frecuencia. Cada respuesta enlaza a la página completa que trata el tema a profundidad.
Primeros pasos
¿Dónde está mi interfaz de administración?
Las instalaciones estándar con systemd enlazan el CMS solo a loopback (127.0.0.1:3001 de forma predeterminada para la instancia 1) y ponen Caddy o nginx al frente, así que llegas al admin a través del dominio de admin de tu site. Las instalaciones quick y offline sirven el admin directamente en el puerto 8080 del host.
¿La compilación del site ocurre automáticamente cuando edito?
No . los builds son operaciones explícitas, despachadas desde el dashboard, mediante un webhook de build configurado, o ejecutadas a mano. Cada build queda registrado, y un fallo nunca sobrescribe tu site en vivo.
Instalé y me sigue enviando a /setup. Una instalación nueva trae una contraseña de admin de relleno, y cada solicitud se redirige a la página de setup hasta que establezcas una real (12+ caracteres con mayúsculas, minúsculas y dígitos). Una vez establecida, la página de setup desaparece.
¿El endpoint /health? Cada instancia expone un endpoint de salud para monitoreo: {"status":"ok","db":"ok"} en caso de éxito, 503 cuando la base de datos es inalcanzable.
Cuentas y acceso
¿Cuál es la diferencia entre admin y editor? Los admins gestionan usuarios, builds, configuraciones, API keys y todo el contenido. Los editores no pueden acceder a eso; su acceso puede limitarse aún más por tipos de contenido e idiomas permitidos.
¿Por qué un editor no puede publicar? Si el flujo de aprobación está habilitado (Settings → Workflow), los intentos de publicación de no-admins se convierten en enviar para revisión. Desactívalo para publicación directa.
¿Por qué todos quedan deslogueados después de cambiar el secret? La variable de entorno CHINASKI_SECRET firma las sesiones y deriva la clave que cifra las credenciales almacenadas. Rótala deliberadamente: las sesiones mueren de inmediato, y las configuraciones cifradas (contraseña SMTP, secrets) deben volver a guardarse después.
Estoy bloqueado por intentos de login fallidos. Los bloqueos son fijos por IP: 60 segundos después de 5 fallos, 5 minutos después de 10, 30 minutos después de 20 . y sobreviven a los reinicios. No se pueden ajustar en el área de administración; la configuración del umbral de fallos es solo para alertas en el registro de eventos.
Contenido y compilación
Los cambios no se muestran en el site. Publicar contenido actualiza la base de datos, no la salida estática . el site solo cambia cuando se ejecuta un build. Dispara uno desde el dashboard (o por API/webhook), luego revisa el estado del build y el historial de builds, incluidos los bloqueos de promotion guard.
Un build terminó pero el site se ve antiguo. Los builds promueven solo salida saludable: errores de render, violaciones del quality guard (caída del número de páginas, enlaces rotos, regresiones de accesibilidad), o fallos de manifest detienen la promoción y mantienen sirviendo el site anterior. El historial de builds muestra qué verificación se negó; puedes forzar una promoción para ese build si aceptas la regresión.
¿Cuánto puede durar un build? Los builds tienen un techo estricto de 30 minutos; un build que supera el tiempo se mata y deja la salida en vivo intacta.
¿Adónde fue mi entrada? El contenido eliminado va a la papelera, no directamente a la inexistencia; las purgas de elementos en la papelera se ejecutan periódicamente. Revisa la lista de Trash para restaurar.
Respaldos y recuperación
¿Qué se respalda? El respaldo diario del sistema captura la base de datos (retención de 14 días de forma predeterminada) y hace espejo de los medios. Los respaldos dentro de la aplicación crean archivos tar.gz completos (base de datos, medios, temas, plantillas), verificados después de su creación de forma predeterminada y opcionalmente enviados a DigitalOcean Spaces.
Restaurar en un host nuevo . ¿problemas de conexión? Restaura el archivo de entorno antiguo antes que nada: la clave de cifrado de las credenciales almacenadas se deriva de tu CHINASKI_SECRET, así que una base de datos restaurada abierta bajo un secret diferente pierde silenciosamente los secrets almacenados . establece primero el secret original. El runbook completo está en la página de disaster recovery.
Postura de seguridad
- Las cookies de sesión están firmadas, Secure, HttpOnly y SameSite=Lax; los tokens CSRF protegen cada solicitud de administración que cambia estado; un nonce de CSP por solicitud bloquea los scripts en línea.
- Las integraciones de salida se validan contra rangos de direcciones privados/internos (los webhooks no pueden apuntar a tu red interna), nunca siguen redirecciones y limitan el tamaño de la respuesta.
- Los uploads se identifican por el contenido del archivo, no por la extensión; los uploads de SVG se rechazan por completo; la importación masiva de CSV está limitada (4 MiB, 5,000 filas, transacción única).
Puntas rápidas de solución de problemas
- Los logs van al journal del sistema (con líneas JSON estructuradas para eventos de alta señal, incluidas las IPs de los clientes . el README documenta un fragmento de política de retención de journald que puedes adoptar para ajustarte a tu política de privacidad).
- Un build está "busy" solo mientras se ejecuta uno; el lock expira por sí solo si un build muere sin reportarse.
- Los conflictos de puertos / discrepancias de proxy tienen su propia página (ver Troubleshooting → Port Conflicts).
Honestidad del mapa de características
- Sin ecosistema de plugins, sin arquitectura de hooks, sin marketplace de temas; sin editor drag-and-drop; sin Postgres (el multi-tenancy es un elemento del roadmap). Extender el sistema significa cambios de código, no instalaciones.
- El core está licenciado bajo MIT.
Preguntas de idioma y multilingüismo
- Múltiples idiomas, modos de URL por ruta/subdominio, alternates hreflang y un switcher de idioma estático vienen integrados y documentados en sus propias páginas. Las configuraciones por idioma cubren títulos de blog y textos del aviso de cookies, y la interfaz de administración misma viene localizada.
- La publicación programada respeta la zona horaria del site; el contenido cuyo idioma elimines del conjunto activo no puede quedar "huérfano" . el admin se niega a la eliminación hasta que ese contenido se elimine o se reasigne.