Ir al contenido
Bondry

Requisitos

Qué necesita un servidor antes de instalar Bondry, en hosting compartido y en VPS, y cómo comprobarlo sin acceso a terminal.

Bondry es una aplicación PHP. No hay Node, no hay paso de build y no hay ningún servicio que mantener vivo aparte de una entrada de cron. Esta página lista el mínimo para hosting compartido y la configuración recomendada para un VPS, para que compruebes el hosting antes de comprar.

De un vistazo#

Elemento Requisito
PHP 8.3 o superior (se admiten 8.3, 8.4 y 8.5)
Base de datos MySQL 8.0 o superior, o MariaDB 10.6 o superior (InnoDB, utf8mb4)
Servidor web Apache 2.4 con mod_rewrite (el producto incluye public/.htaccess), Nginx o LiteSpeed
HTTPS Certificado válido en el dominio
Cron Una entrada, cada minuto
Red de salida HTTPS hacia api.bondry.org
Disco 500 MB libres antes de las subidas
Memoria memory_limit de 256M (128M es el mínimo)

Hosting compartido (mínimo)#

Comprueba cada línea en el panel del hosting (cPanel, Plesk o DirectAdmin).

Qué comprobar Valor Por qué
Selector de versión de PHP 8.3, 8.4 u 8.5 El instalador rechaza versiones anteriores
Extensiones de PHP pdo_mysql, mbstring, openssl, zip, gd, curl, fileinfo, intl, tokenizer Todas son obligatorias; el instalador no continúa si falta una
memory_limit 256M 128M es el mínimo; el actualizador del panel y el procesamiento de imágenes necesitan margen
max_execution_time 120 o más El actualizador lo sube por sí mismo cuando el hosting lo permite
upload_max_filesize 64M El paquete del core pesa unos 16 MB y los paquetes de módulos y temas pasan por el panel
post_max_size 64M Debe ser al menos igual a upload_max_filesize
max_input_vars 3000 Los formularios grandes del panel envían muchos campos
OPcache Activado Páginas más rápidas
Directorios con escritura storage, bootstrap/cache, modules, themes y public/uploads Caché, registros, paquetes instalados y subidas públicas
Base de datos Una base MySQL y un usuario con todos los derechos sobre ella El instalador crea las tablas
Tareas cron Permitidas en el panel Ver abajo
Correo saliente Credenciales SMTP o un proveedor de API El valor por defecto MAIL_MAILER=log escribe el correo en un archivo; cámbialo tras la instalación
HTTPS saliente api.bondry.org accesible Activación de licencia, heartbeat y actualizaciones
Disco 500 MB libres antes de las subidas Ver la tabla de abajo
SSH Opcional El instalador web y el panel lo hacen todo

Cron y cola#

Añade una entrada, cada minuto:

Shell
* * * * * php /ruta/a/bondry/artisan schedule:run >> /dev/null 2>&1

El programador se encarga de la limpieza, el heartbeat de la licencia, la comprobación diaria de actualizaciones, la limpieza de archivos, los traslados de almacenamiento, los webhooks, las importaciones RSS y los resúmenes. No ejecuta un worker de cola. Bondry no exige worker: la indexación de búsqueda se ejecuta tras la respuesta, en el mismo proceso. Si el driver de cola es database y esperan más de 100 trabajos, la página de salud del panel avisa de que no hay ningún worker en marcha. Si el hosting no tiene cron, la Configuración Avanzada ofrece un modo que ejecuta las tareas pendientes con el tráfico del sitio, como máximo una vez por minuto.

Disco#

Parte Tamaño
Paquete del core (comprimido) 16 MB
Instalado unos 60 MB
Copia de seguridad que hace el actualizador durante una actualización unos 60 MB
Subidas crece con tu contenido

Prevé 500 MB libres antes de las subidas.

Hostings habituales#

Cualquier hosting cPanel, Plesk o DirectAdmin con los valores anteriores funciona. El instalador verifica cada elemento antes de escribir nada, así que un hosting que no cumple se señala antes de modificar tu cuenta.

VPS o servidor dedicado (recomendado)#

Tamaño CPU RAM Disco
Pequeño (hasta unos miles de miembros, poco tráfico) 1 vCPU 1 GB (2 GB con los módulos Designer y LMS) 10 GB SSD
Mediano 2 vCPU 4 GB 40 GB SSD
Grande 4 vCPU 8 GB SSD, dimensionado según las subidas

MySQL se beneficia sobre todo de la RAM y del SSD.

Pila de software#

Componente Recomendación
Sistema operativo Debian 12 o 13, Ubuntu 22.04 o 24.04
Servidor web Nginx con PHP-FPM 8.3 o superior
Base de datos MySQL 8.4 o MariaDB 10.11
Worker de cola (opcional) Supervisor o systemd ejecutando php artisan queue:work database --sleep=3 --tries=3
Redis (opcional) Caché, sesión y cola; el archivo .env tiene entradas REDIS_*
TLS Let's Encrypt con certbot
Cortafuegos Solo 22, 80 y 443 abiertos
Cron La misma entrada de arriba
Copias de seguridad La base de datos y el directorio public/uploads

Un bloque de servidor Nginx mínimo:

Código
server {
    listen 443 ssl;
    server_name example.com;
    root /var/www/bondry/public;
    index index.php;
    client_max_body_size 64m;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_pass unix:/run/php/php8.3-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
    }
}

Propiedad de los archivos#

El código es legible por el usuario de PHP. Solo storage, bootstrap/cache, modules, themes y public/uploads tienen escritura. Asigna como propietario al usuario de PHP-FPM en lugar de abrir los directorios a todo el mundo.

Entornos probados#

Entorno Configuración
Producción Debian 13, Nginx, PHP-FPM 8.5, MySQL 8.4 (bondry.org y demo.bondry.org funcionan aquí)
Pruebas automatizadas PHP 8.3 y PHP 8.4
Desarrollo macOS, PHP 8.5

Comprobar antes de comprar#

  • Sube un archivo con <?php phpinfo(); y busca la versión de PHP, la lista de extensiones y los valores de memory_limit, upload_max_filesize, post_max_size y max_input_vars. Borra el archivo después.
  • Cron: abre la sección de cron del panel y confirma que puedes añadir una tarea cada minuto con la línea de comandos de PHP.
  • HTTPS saliente: pregunta al hosting, o ejecuta un archivo PHP de una línea con var_dump(file_get_contents('https://api.bondry.org')); y comprueba que no da error de conexión. Bórralo después.

Problemas habituales#

Problema Causa Solución
El instalador se niega a empezar PHP 8.2 o anterior seleccionado Selecciona 8.3 o superior en el panel
Elemento rojo para intl o zip Extensión no activada Actívala en la página de extensiones de PHP del panel
Las subidas fallan post_max_size o upload_max_filesize demasiado bajos Sube ambos a 64M
Error 500 tras instalar storage o bootstrap/cache sin escritura Corrige el propietario o los permisos de esos directorios
Las tareas programadas nunca se ejecutaron Falta la entrada de cron o la ruta es incorrecta Añade la entrada; la página de salud muestra la última ejecución
Falla la activación de la licencia HTTPS saliente hacia api.bondry.org bloqueado Pide al hosting que lo permita

Privacidad

Este sitio usa solo cookies necesarias: sesión, idioma, tema y la verificación antispam de hCaptcha en los formularios. No hay seguimiento ni publicidad. Política de privacidad