Cómo instalar WonderCMS en AlmaLinux 9
WonderCMS es un sistema de gestión de contenidos (CMS) ligero y de código abierto, diseñado para ser sencillo y eficaz. A diferencia de plataformas más complejas, se centra en la facilidad de uso, lo que lo convierte en una opción ideal para usuarios que desean crear y gestionar sitios web sin grandes conocimientos técnicos. WonderCMS funciona sin base de datos, confiando en cambio en el almacenamiento de archivos planos, lo que simplifica la instalación y el mantenimiento. Todo el sistema puede configurarse con un solo archivo, y su diseño minimalista garantiza un rendimiento rápido. Ofrece funciones básicas como temas personalizables, plugins y ajustes SEO, lo que permite a los usuarios crear sitios web funcionales con las mínimas complicaciones.
En este tutorial, te mostraremos cómo instalar WonderCMS en un servidor AlmaLinux 9. Ejecutarás WonderCMS con el servidor web Httpd y PHP 8.x.
Requisitos previos
Antes de empezar, asegúrate de que tienes los siguientes requisitos:
- Un servidor AlmaLinux 9.
- Un usuario no root con privilegios de administrador.
- Un nombre de dominio apuntando a una dirección IP del servidor.
- Un SELinux con el estado permisivo.
Instalación de Apache y PHP
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/httpd y PHP 8.x en el servidor AlmaLinux 9.
En primer lugar, ejecuta el siguiente comando para instalar el servidor web httpd y los paquetes PHP en tu servidor AlmaLinux. En este momento, puedes instalar WonderCMS con PHP 8.x en tu sistema.
sudo dnf install httpd php php-common php-curl php-opcache php-xml php-gd php-mbstring php-zip php-json wget unzip git
Escribe y para confirmar la instalación.
Una vez completada la instalación, abre la configuración PHP por defecto /etc/php.ini utilizando el siguiente comando del editor nano.
sudo nano /etc/php.ini
Cambia la configuración por defecto por la siguiente, y asegúrate de ajustar las opciones date.timezone y memory_limit a tu entorno.
date.timezone = Europe/Amsterdam memory_limit = 512M
upload_max_filesize = 128MB
post_max_size = 128MB
max_execution_time = 300
max_input_vars = 5000
Cuando hayas terminado, guarda el archivo y sal del editor.
Ahora ejecuta el siguiente comando para iniciar y habilitar el servicio httpd. A continuación, verifícalo para asegurarte de que el servicio se está ejecutando.
sudo systemctl enable --now httpd sudo systemctl status httpd
Si el servicio httpd se está ejecutando, deberías obtener una salida como la siguiente:
Configurar Firewalld
Después de haber instalado Apache y PHP, necesitas abrir puertos tanto para HTTP como para HTTPS a través del firewalld. Esto permitirá el acceso a tu instalación de WonderCMS, tanto en el protocolo HTTP como en el HTTPS.
Abre ambos servicios HTTP y HTTPS en firewalld utilizando el siguiente comando. Verás una salida de éxito.
sudo firewall-cmd --add-service={http,https} --permanent
Ahora ejecuta el siguiente comando para recargar las reglas de firewalld y aplicar los nuevos cambios.
sudo firewall-cmd --reload
Por último, verifica las reglas firewalld utilizando el comando siguiente. Asegúrate de que tanto el servicio HTTP como el HTTPS están añadidos al firewalld.
sudo firewall-cmd --list-all
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. Así que asegúrate de visitar la página GitHub de WonderCMS y obtener el último enlace de descarga.
Desplázate al directorio /var/www y descarga la última versión de WonderCMS utilizando el comando wget que aparece a continuación. Asegúrate de visitar la página GitHub de WOnderCMS para obtener la última versión.
cd /var/www/ wget https://github.com/WonderCMS/wondercms/releases/download/3.4.3/wondercms-343.zip
Una vez descargada, ejecuta el siguiente comando unzip para extraer el código fuente de WonderCMS a /var/www/wondercms. Este directorio será el DocumentRoot de WonderCMS.
unzip wondercms-343.zip -d .
Ahora ejecuta el siguiente comando para cambiar la propiedad del directorio /var/www/wondercms al usuario‘apache‘ y el permiso por defecto a 755.
sudo chown -R apache:apache /var/www/wondercms sudo chmod -R 755 /var/www/wondercms
Configurar el host virtual httpd
Después de haber descargado y configurado Document-Root para WonderCMS, crearás una nueva configuración de host virtual Apache/httpd que se utilizará para ejecutar la instalación de WonderCMS. Asegúrate de que tienes un nombre de dominio apuntando a tu dirección IP. Además, debes asegurarte de que el módulo mod_rewrite en httpd está activado.
Crea una nueva configuración de host virtual httpd /etc/httpd/conf.d/wondercms.conf utilizando el siguiente comando del editor nano.
sudo nano /etc/httpd/conf.d/wondercms.conf
Introduce la configuración que aparece a continuación en el archivo y asegúrate de cambiar la opción ServerName por el nombre de tu dominio de destino.
``` <VirtualHost *:80> ServerName cms.hwdomain.io DirectoryIndex index.php DocumentRoot /var/www/wondercms Redirect /wondercms/loginURL /loginURL ErrorLog /var/log/httpd/cms.hwdomain.io-error.log CustomLog /var/log/httpd/cms.hwdomain.io-access.log combined <Directory /var/www/wondercms> Options FollowSymLinks AllowOverride All Require all granted </Directory> </VirtualHost>
Guarda el archivo y sal del editor.
Ahora ejecuta el siguiente comando para verificar la sintaxis de tu httpd y asegurarte de que no hay ningún error. Verás una salida Sintaxis OK si tienes una sintaxis httpd correcta.
sudo apachectl configtest
Por último, reinicia el servidor web httpd para aplicar el nuevo archivo de host virtual para WonderCMS. Una vez ejecutado el comando, tu instalación de WonderCMS debería ser accesible.
sudo systemctl restart httpd
Asegurar WonderCMS con HTTPS mediante Certbot
Ahora que has creado el host virtual Apache/httpd, el siguiente paso es asegurar WonderCMS con HTTPS mediante Certbot y Letsencrypt. Debes asegurarte de que el repositorio EPEL está añadido a tu sistema, el paquete Certbot está disponible en el repositorio EPEL.
Instala el repositorio EPEL en tu servidor AlmaLinux con el siguiente comando.
sudo dnf install epel-release
Una vez añadido el repositorio EPEL, instala el plugin certbot y python3-certbot-apache utilizando el comando dnf de abajo. Escribe y para confirmar la instalación.
sudo dnf install certbot python3-certbot-apache
Una vez completada la instalación, ejecuta el siguiente comando certbot para generar certificados SSL/TLS para tu instalación de WonderCMS. Asegúrate de cambiar el nombre de dominio y la dirección de correo electrónico con tu información.
sudo certbot --apache --agree-tos --no-eff-email --redirect --hsts --staple-oscp --email [email protected] -d cms.hwdomain.io
Acceder a WonderCMS
Abre el navegador web y visita tu nombre de dominio WonderCMS, como https://cms.hwdomain.io/. En la página de inicio de WonderCMS, deberías ver la contraseña generada. Copia la contraseña guárdala en el lugar secreto y pulsa el botón PINCHA AQUÍ PARA INICIAR SESIÓN.
Pega la contraseña generada y haz clic en INICIAR SESIÓN.
Si tienes éxito, deberías obtener la página de administración de WonderCMS como la siguiente:
Conclusión
¡Enhorabuena! Has completado la instalación de WonderCMS en el servidor AlmaLinux 9. Tu instalación de WonderCMS funciona con el servidor web Httpd y PHP 8.x. También está asegurada con firewalld y HTTPS mediante certbot. Desde aquí, puedes subir archivos de texto, e instalar nuevos temas o plugins.