Cómo instalar WonderCMS en Debian 12
WonderCMS es un sistema de gestión de contenidos (CMS) ligero y de código abierto, diseñado para ser sencillo y fácil de usar. A diferencia de muchas otras plataformas CMS que requieren una configuración exhaustiva o grandes recursos, WonderCMS funciona con una única base de datos plana, lo que significa que no necesita un sistema de base de datos tradicional como MySQL. Esto hace que sea extremadamente fácil de instalar y gestionar, y a menudo no requiere más que subir los archivos del CMS a un servidor. A pesar de su pequeño tamaño, WonderCMS ofrece funciones esenciales como la edición de contenidos, opciones SEO, personalización de temas y compatibilidad con plugins, lo que lo convierte en una opción viable para los usuarios que desean una solución minimalista y sencilla para crear y gestionar sitios web.
En este tutorial, te mostraremos cómo instalar WonderCMS en un servidor Debian 12 con servidor web Apache y PHP 8.x.
Requisitos previos
Asegúrate de que tienes lo siguiente antes de empezar:
- Un servidor Debian 12.
- Un usuario no root con privilegios de administrador.
- Un nombre de dominio apuntando a una dirección IP del servidor.
Instalación de dependencias
WonderCMS es un sistema de gestión de contenidos de código abierto escrito en PHP. Es un CMS plano, lo que significa que no requiere una base de datos como MySQL/MariaDB para instalarse. Utiliza archivos de texto como base de datos.
En esta guía, instalarás WonderCMS con el servidor web Apache y PHP 8.2.
Antes de instalar los paquetes, refresca y actualiza el repositorio de Debian utilizando el comando que aparece a continuación.
sudo apt update
Una vez actualizado, instala las dependencias para WonderCMS ejecutando el siguiente comando. WonderCMS es un CMS plano, no requiere base de datos. Así que sólo instalarás el servidor web Apache y los paquetes PHP.
sudo apt install apache2 php php-common php-mbstring php-curl php-zip unzip
Escribe y para confirmar la instalación.
Una vez finalizada la instalación, verifica el servicio Apache con el comando que aparece a continuación. Apache debería estar ejecutándose y activado por defecto.
sudo systemctl is-enabled apache2 sudo systemctl status apache2
A continuación puedes ver el servicio Apache habilitado y en ejecución.
Por último, verifica la versión de PHP y habilita las extensiones con el siguiente comando.
php -m php -v
En la salida de abajo, puedes ver que PHP 8.2 está instalado.
Configurar PHP
Después de instalar las dependencias, necesitas configurar PHP para el WonderCMS. Tendrás que modificar la configuración php.ini para el servidor web Apache y cambiar algunos de los ajustes predeterminados, como la zona horaria, el límite de memoria, el tiempo de ejecución y el tamaño máximo de los archivos cargados.
Abre la configuración php.ini del servidor web Apache utilizando el siguiente comando del editor nano.
sudo nano /etc/php/8.2/apache2/php.ini
Cambia la configuración PHP por defecto como se indica a continuación – Asegúrate de ajustar la zona horaria y el límite_de_memoria con el entorno actual de tu servidor.
date.timezone = "Europe/Amsterdam" memory_limit = 512M upload_max_filesize = 128MB post_max_size = 128MB max_execution_time = 300 max_input_vars = 5000
Guarda y sal del archivo cuando hayas terminado.
Ahora reinicia el servicio Apache para aplicar tu modificación en PHP.
sudo systemctl restart apache2
Configurar el cortafuegos
En esta guía, ejecutarás WonderCMS con un cortafuegos activado. En este ejemplo, utilizarás UFW. Así que ahora necesitas instalar UFW y abrir puertos para los servicios SSH, HTTP y HTTPS.
Instala UFW en tu servidor Debian con el siguiente comando. Escribe y para confirmar y continuar.
sudo apt install ufw
Una vez finalizada la instalación, habilita el perfil OpenSSH para abrir el puerto 22 y el perfil «WWW Full» para abrir los puertos HTTP y HTTPS.
sudo ufw allow OpenSSH sudo ufw allow "WWW Full"
Ahora ejecuta el siguiente comando para iniciar y habilitar UFW. Escribe y para confirmar, y entonces UFW debería estar ejecutándose y habilitado.
sudo ufw enable
Por último, verifica el estado de UFW utilizando el siguiente comando. Ambos perfiles OpenSSH y «WWW Full» están habilitados en UFW.
sudo ufw status
Descarga del código fuente de WonderCMS
En esta sección, descargarás el código fuente de WonderCMS y configurarás el directorio raíz del documento con los permisos y la propiedad adecuados. Antes de empezar, asegúrate de visitar la página GitHub de WonderCMS y obtener el último enlace de descarga.
Ve al directorio /var/www y descarga el código fuente de WonderCMS utilizando el siguiente comando wget.
cd /var/www/ wget https://github.com/WonderCMS/wondercms/releases/download/3.4.3/wondercms-343.zip
Una vez descargado, extrae el código fuente de WonderCMS al directorio /var/www/wondercms utilizando el comando unzip.
unzip wondercms-343.zip -d /var/www/wondercms
Por último, cambia la propiedad del directorio /var/www/wondercms al usuario www-data. Con esto, permites a Apache leer, escribir y ejecutar en el directorio raíz de documentos de WonderCMS.
sudo chown -R www-data:www-data /var/www/wondercms sudo chmod -R 755 /var/www/wondercms
Configurar el host virtual de Apache
En este ejemplo, ejecutarás WonderCMS con Apache, por lo que necesitas crear la configuración del host virtual para ello. Asegúrate de que tu nombre de dominio apunta a la dirección IP de tu servidor Debian.
En primer lugar, utiliza el siguiente comando para activar el módulo de reescritura en Apache. WonderCMS requiere que mod_rewrite esté habilitado.
sudo a2enmod rewrite
Una vez habilitado, crea una nueva configuración de host virtual /etc/apache2/sites-available/wondercms.conf utilizando el comando editor nano.
sudo nano /etc/apache2/sites-available/wondercms.conf
Introduce la siguiente configuración. Asegúrate de cambiar el nombre de dominio, la ruta del directorio raíz del documento y los archivos de registro con tu información.
<VirtualHost *:80> ServerName cms.hwdomain.io DirectoryIndex index.php DocumentRoot /var/www/wondercms Redirect /wondercms/loginURL /loginURL ErrorLog /var/log/apache2/cms.hwdomain.io-error.log CustomLog /var/log/apache2/cms.hwdomain.io-access.log combined <Directory /var/www/wondercms> Options FollowSymLinks AllowOverride All Require all granted </Directory> </VirtualHost>
Guarda y sal del archivo cuando hayas terminado.
A continuación, ejecuta el siguiente comando para habilitar el archivo de host virtual wondercms.conf. A continuación, verifica Apache y asegúrate de que la sintaxis es correcta.
sudo a2ensite wondercms.conf sudo apachectl configtest
Deberías obtener una salida Sintaxis OK si tienes una sintaxis de Apache adecuada.
Por último, ejecuta el siguiente comando para reiniciar el servicio Apache y aplicar tus cambios. Con esto, tu instalación de WonderCMS debería estar lista.
sudo systemctl restart apache2
Proteger WonderCMS con Letsencrypt
Una vez configurado el host virtual de Apache, asegura tu instalación de WonderCMS con HTTPS. En este caso, utilizarás Certbot y Letsencrypt.
Puedes generar certificados autofirmados para nombres de dominio locales o redes internas para asegurar tu instalación de WonderCMS.
Instala Certbot y el plugin de Certbot para Apache utilizando el siguiente comando. Escribe y para confirmar la instalación.
sudo apt install certbot python3-certbot-apache
Una vez completada la instalación, genera certificados SSL para tu nombre de dominio WonderCMS. Además, asegúrate de cambiar el nombre de dominio y la dirección de correo electrónico para que coincidan con tu información.
sudo certbot --apache --agree-tos --no-eff-email --redirect --hsts --staple-oscp --email [email protected] -d cms.hwdomain.io
Una vez finalizado el proceso, tu certificado debería estar disponible en el directorio /etc/letsencrypt/live/hwdomain.io. Tu instalación de WonderCMS debería estar automáticamente protegida con HTTPS.
Acceder a la instalación de WonderCMS
Abre el navegador web y visita tu nombre de dominio WonderCMS, como https://hwdomain.io/. En la página de inicio de WonderCMS, deberías ver la contraseña generada. Copia la contraseña y guárdala en un lugar secreto.
Conclusión
¡Enhorabuena! Has instalado con éxito WonderCMS en el servidor Debian 12, junto con un servidor web Apache y PHP 8.2. También has asegurado WonderCMS con UFW y certificados SSL de Letsencrypt.