Cómo instalar ProcessWire CMS en Debian 11

ProcessWire es un CMS de código abierto basado en PHP que se utiliza para desplegar contenidos en la web. Es un potente sistema de gestión de contenidos que te ayuda a ahorrar tiempo y a hacer divertido el desarrollo a cualquier escala. ProcessWire tiene una interfaz web intuitiva en la que puedes crear y publicar contenidos en Internet fácilmente. Ofrece funciones útiles como multi-idioma, potente sistema de plantillas, hooks, headless, preparado para línea de comandos, arquitectura de plugins totalmente modular, carga de archivos e imágenes mediante arrastrar y soltar, y mucho más.

Este tutorial te mostrará cómo instalar el sistema de gestión de contenidos ProcessWire en Debian 11.

Requisitos previos

  • Un servidor que ejecute Debian 11.
  • Un nombre de dominio válido apuntando a la IP de tu servidor.
  • Una contraseña de root configurada en el servidor.

Cómo empezar

Antes de empezar, se recomienda siempre actualizar todos los paquetes del sistema a la última versión. Puedes actualizarlos todos con el siguiente comando.

apt update -y
apt upgrade -y

Una vez actualizados todos los paquetes, puedes instalar el servidor LAMP.

Instalar el servidor Apache, PHP y MariaDB

A continuación, instalaremos Apache, MariaDB, PHP y otras dependencias necesarias para alojar ProcessWire CMS en la web. Puedes instalarlos todos ejecutando el siguiente comando:

apt install apache2 mariadb-server php libapache2-mod-php php-common php-mysql php-xml php-xmlrpc php-curl php-gd php-imagick php-cli php-dev php-imap php-mbstring php-opcache php-soap php-zip php-intl unzip wget curl -y

Después de instalar todos los paquetes, inicia el servicio Apache y MariaDB con el siguiente comando:

systemctl start apache2
systemctl start mariadb

Una vez que hayas terminado, puedes proceder a crear la base de datos y el usuario en el siguiente paso.

Crear una base de datos para Processwire

Por defecto, MariaDB no está protegida, y la contraseña de root no está configurada. Tendrás que hacerlo primero. Puedes hacerlo utilizando el script mysql_secure_installation:

mysql_secure_installation

Responde a todas las preguntas como se muestra a continuación:

Enter current password for root (enter for none): Press ENTER
Set root password? [Y/n]: Y
New password: Set-your-new-password
Re-enter new password: Set-your-new-password
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Una vez que MariaDB esté asegurada, abre la interfaz de terminal de línea de comandos e inicia sesión en el intérprete de comandos de MariaDB utilizando el siguiente comando:

mysql -u root -p

Una vez que hayas iniciado sesión, crea una base de datos y un usuario con el siguiente comando:

MariaDB [(none)]> CREATE USER 'processuser'@'localhost' IDENTIFIED BY 'password';
MariaDB [(none)]> CREATE DATABASE processdb;

A continuación, concede todos los privilegios a la base de datos ProcessWire con el siguiente comando:

MariaDB [(none)]> GRANT ALL PRIVILEGES ON processdb.* TO 'processuser'@'localhost';

A continuación, vacía los privilegios y sal del intérprete de comandos MariaDB con el siguiente comando:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> Exit;

Una vez configurada la MariaDB, puedes proceder a descargar y configurar ProcessWite en el siguiente paso.

Descargar ProcessWire CMS

A continuación, debes descargar la última versión de ProcessWire CMS desde su sitio web o repositorio Git. Puedes utilizar el comando wget para descargar la última versión de ProcessWire desde el repositorio Git utilizando el siguiente comando:

wget https://github.com/processwire/processwire/archive/master.zip

Una vez completada la descarga, descomprime el archivo descargado con el siguiente comando:

unzip master.zip

A continuación, mueve el directorio extraído al directorio raíz web de Apache utilizando el siguiente comando.

mv processwire-master/ /var/www/html/processwire

A continuación, cambia la propiedad y el permiso del directorio ProcessWire:

chown www-data:www-data -R /var/www/html/processwire/
chmod -R 755 /var/www/html/processwire/

Una vez que hayas terminado, puedes proceder a configurar el CMS Apache para ProcessWire en el siguiente paso.

Crear un host virtual Apache para ProcessWire

A continuación, tendrás que crear un archivo de configuración del host virtual de Apache para ProcessWire. Puedes crearlo con el siguiente comando:

nano /etc/apache2/sites-available/processwire.conf

Añade la siguiente configuración:

<VirtualHost *:80>

ServerAdmin [email protected]

DocumentRoot /var/www/html/processwire
ServerName processwire.example.com

<Directory /var/www/html/processwire/>

Options FollowSymLinks
AllowOverride All
Require all granted

</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

Guarda y cierra el archivo cuando hayas terminado. A continuación, activa el host virtual de Apache y el módulo de reescritura mediante el siguiente comando:

a2ensite processwire.conf
a2enmod rewrite

Por último, reinicia el servicio Apache para aplicar los cambios:

systemctl restart apache2

También puedes verificar el estado del Apache con el siguiente comando:

systemctl status apache2

Obtendrás la siguiente salida:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2023-02-22 13:19:19 UTC; 7s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 25697 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 25703 (apache2)
      Tasks: 6 (limit: 4675)
     Memory: 16.3M
        CPU: 120ms
     CGroup: /system.slice/apache2.service
             ??25703 /usr/sbin/apache2 -k start
             ??25704 /usr/sbin/apache2 -k start
             ??25705 /usr/sbin/apache2 -k start
             ??25706 /usr/sbin/apache2 -k start
             ??25707 /usr/sbin/apache2 -k start
             ??25708 /usr/sbin/apache2 -k start

Feb 22 13:19:19 debian11 systemd[1]: Starting The Apache HTTP Server...

En este punto, ProcessWire CMS está instalado y configurado. Ahora puedes pasar al siguiente paso.

Realizar la instalación Web de ProcessWire

Ahora, abre tu navegador web y escribe la URL http://processwire.example.com para acceder al asistente de instalación web de ProcessWire. Se te redirigirá a la página de bienvenida de ProcessWire:

Instalador de ProcessWire

Ahora, haz clic en el botón Comenzar. Deberías ver la página de selección de perfil:

Perfil de instalación del sitio

Selecciona Perfil en blanco y haz clic en el botón Continuar. Deberías ver la pantalla de validación del paquete.

Comprobación de requisitos previos

Tras validar todos los requisitos, haz clic en el botón Continuar al paso siguiente. Deberías ver la página de configuración de la base de datos:

Configuración de la base de datos

Ajustes de fecha y hora

Nombre de host

Proporciona los detalles de tu base de datos, como el nombre de host, el nombre de la base de datos, el nombre de usuario y la contraseña de la base de datos y la zona horaria. A continuación, haz clic en el botón Continuar. Deberías ver la siguiente página:

Probar la configuración de la base de datos

Configuración del usuario administrador

Limpieza tras la instalación

Define tu nombre de usuario y contraseña de administrador y otros ajustes, y luego pulsa el botón Continuar. Una vez finalizada la instalación, deberías ver la siguiente pantalla.

Instalación de ProcessWire finalizada

Ahora, haz clic en el botón Acceder a Admin. Deberías ver la siguiente página:

inicio de sesión de administrador

Proporciona tu nombre de usuario y contraseña de administrador. A continuación, haz clic en el botón Iniciar sesión. Deberías ver el panel de control por defecto de ProcessWire en la siguiente página:

Panel de control ProcessWire

Conclusión

Esta guía te ha enseñado a instalar ProcessWire CMS con Apache en un servidor Debian 11. Ahora puedes utilizar ProcessWire para publicar el contenido en la web. Puedes visitar la página de documentación de ProcessWire. Para más información. No dudes en preguntarme si tienes alguna duda.

También te podría gustar...