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:
Ahora, haz clic en el botón Comenzar. Deberías ver la página de selección de perfil:
Selecciona Perfil en blanco y haz clic en el botón Continuar. Deberías ver la pantalla de validación del paquete.
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:
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:
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.
Ahora, haz clic en el botón Acceder a Admin. Deberías ver la siguiente página:
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:
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.