Cómo instalar ProcessWire CMS en Ubuntu 18.04 LTS

ProcessWire es un sistema de gestión de contenidos basado en PHP, gratuito y de código abierto, y un marco de gestión de contenidos. Es un CMS sencillo, flexible y potente construido para ahorrarte tiempo y trabajar como tú lo haces. ProcessWire proporciona una interfaz web fácil de usar que te permite publicar sitios web fácilmente. Está especialmente diseñado para una facilidad de uso que te permite crear sitios web de contenido potente y dinámico.

Características

  • Sistema de control de acceso basado en roles.
  • Instalador gráfico basado en la web.
  • Proporciona una arquitectura de plugins totalmente modular y un potente sistema de plantillas.
  • Soporte multilingüe.
  • Admite la edición de texto enriquecido.
  • Funciones de carga y edición de archivos e imágenes de arrastrar y soltar.

En este tutorial, explicaré cómo instalar ProcessWire con el servidor web Apache en Ubuntu 18.04 LTS.

Requisitos

  • Un servidor con Ubuntu 18.04..
  • Un usuario no root con privilegios sudo.

Cómo empezar

Antes de empezar, tendrás que actualizar tu sistema con la última versión. Puedes hacerlo ejecutando el siguiente comando:

sudo apt-get update -y
sudo apt-get upgrade -y

Una vez que tu sistema esté actualizado, reinicia el sistema para aplicar los cambios.

Instalar Apache, MariaDB y PHP

En primer lugar, tendrás que instalar el servidor web Apache, el servidor MariaDB, PHP y otros módulos PHP en tu servidor. Puedes instalar todos los paquetes simplemente ejecutando el siguiente comando:

sudo apt-get install apache2 mariadb-server unzip wget php7.2 php7.2-mysql php7.2-curl php7.2-json php7.2-cgi libapache2-mod-php7.2 php7.2-xmlrpc php7.2-gd php7.2-mbstring php7.2 php7.2-common php7.2-xmlrpc php7.2-soap php7.2-xml php7.2-intl php7.2-cli php7.2-ldap php7.2-zip php7.2-readline php7.2-imap php7.2-tidy php7.2-recode php7.2-sq php7.2-intl -y

Una vez instalados todos los paquetes, abre el archivo php.ini y realiza algunos cambios:

sudo nano /etc/php/7.2/apache2/php.ini

Haz los siguientes cambios:

memory_limit = 300M
upload_max_filesize = 200M
max_execution_time = 400
date.timezone = Asia/Kolkata
sudo systemctl restart apache2
sudo systemctl restart mariadb
sudo systemctl enable apache2
sudo systemctl enable mariadb

Ahora puedes comprobar el estado del servicio MariaDB con el siguiente comando:

sudo systemctl status mariadb

Salida:

? mariadb.service - MariaDB 10.1.34 database server
   Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2018-12-01 22:46:13 UTC; 9h ago
     Docs: man:mysqld(8)
           https://mariadb.com/kb/en/library/systemd/
  Process: 1317 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
  Process: 1313 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS)
  Process: 935 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= ||   VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ]   && systemc
  Process: 931 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
  Process: 819 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
 Main PID: 1164 (mysqld)
   Status: "Taking your SQL requests now..."
    Tasks: 27 (limit: 2323)
   CGroup: /system.slice/mariadb.service
           ??1164 /usr/sbin/mysqld

Dec 01 22:45:54 ubuntu1804 systemd[1]: Starting MariaDB 10.1.34 database server...
Dec 01 22:46:05 ubuntu1804 mysqld[1164]: 2018-12-01 22:46:05 140324667522176 [Note] /usr/sbin/mysqld (mysqld 10.1.34-MariaDB-0ubuntu0.18.04.1) 
Dec 01 22:46:13 ubuntu1804 /etc/mysql/debian-start[1318]: Upgrading MySQL tables if necessary.
Dec 01 22:46:13 ubuntu1804 systemd[1]: Started MariaDB 10.1.34 database server.

Configurar MariaDB

Por defecto, la instalación de MariaDB no está asegurada. Por lo tanto, tendrás que asegurarla primero. Puedes asegurarla ejecutando el siguiente comando:

sudo mysql_secure_installation

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

    Enter current password for root (enter for none):
    Set root password? [Y/n]: N
    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, entra en el shell de MariaDB:

mysql -u root -p

Proporciona tu contraseña de root. A continuación, crea una base de datos y un usuario para ProcessWire con el siguiente comando:

MariaDB [(none)]> CREATE DATABASE processdb;
MariaDB [(none)]> CREATE USER process;

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

MariaDB [(none)]> GRANT ALL PRIVILEGES ON processdb.* TO 'process'@'localhost' IDENTIFIED BY 'password';

A continuación, vacía los privilegios con el siguiente comando:

MariaDB [(none)]> FLUSH PRIVILEGES;

A continuación, sal de la consola de MariaDB con el siguiente comando

MariaDB [(none)]> exit

Descarga e instala ProcessWire

Puedes descargar la última versión de ProcessWire del repositorio Git con el siguiente comando:

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

Tras la descarga, descomprime el archivo descargado con el siguiente comando:

unzip master.zip

A continuación, copia el directorio extraído al directorio raíz de la web de Apache con el siguiente comando:

sudo cp -r processwire-master /var/www/html/processwire

A continuación, da los permisos adecuados al directorio processwire con el siguiente comando:

sudo chown -R www-data:www-data /var/www/html/processwire/
sudo chmod -R 777 /var/www/html/processwire/

Configurar Apache para ProcessWire

A continuación, tendrás que crear un archivo de host virtual de Apache para ProcessWire. Puedes hacerlo ejecutando el siguiente comando

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

Añade las siguientes líneas:

<VirtualHost *:80>
     ServerAdmin [email protected]
     DocumentRoot /var/www/html/processwire
     ServerName example.com

     <Directory /var/www/html/processwire/>
          Options +FollowSymlinks
          AllowOverride All
          Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/processwire_error.log
     CustomLog ${APACHE_LOG_DIR}/processwire_access.log combined

</VirtualHost>

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

sudo a2ensite processwire.conf
sudo a2enmod rewrite

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

sudo systemctl restart apache2

Accede a ProcessWire

Abre tu navegador web y escribe la URL http://example.com. Serás redirigido a la página de bienvenida de ProcessWire:

Instalador de ProcessWire

Ahora, haz clic en el botón » Get Started «. Deberías ver la siguiente página:

Perfil de la instalación del sitio

Selecciona el perfil de instalación del sitio clásico y haz clic en el botón Continuar. Deberías ver la siguiente página:

Comprobación de compatibilidad

Después de validar todos los requisitos, haz clic en el botón Continuar con el siguiente paso. Deberías ver la siguiente página:

Configuración de la base de datos

Zona horaria y permisos de los archivos

Nombre del host HTTP

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

Configuración de la base de datos de prueba

Configuración de la cuenta de administrador

Limpieza

Aquí, proporciona tu URL de inicio de sesión de administrador, el nombre de usuario y la contraseña de administrador. A continuación, haz clic en el botón Continuar. Una vez que la instalación se haya completado con éxito, deberías ver la siguiente página:

Configuración completada

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

Inicio de sesión del 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:

Tablero de administración

Enlaces

También te podría gustar...