Cómo instalar la herramienta de automatización de marketing de Mautic en Linux


Mautic es una herramienta de automatización de marketing líder, gratuita y de código abierto, basada en la web que le permite comprender, administrar y hacer crecer su empresa u organización de manera conveniente. Es altamente personalizable y extensible, para cumplir con los requisitos de su negocio.

Todavía es un proyecto muy joven al momento de escribir este artículo. Se ejecuta en la mayoría de los entornos de alojamiento estándar y es fácil de instalar y configurar. En este artículo, mostraremos cómo instalar Mautic en distribuciones de Linux.

Paso 1: Instale LEMP Stack en Linux

1. Primero, instale la pila LEMP (Nginx, MySQL o MariaDB y PHP) en sus respectivas distribuciones de Linux usando el administrador de paquetes predeterminado como se muestra.

$ sudo apt install python-software-properties
$ sudo add-apt-repository ppa:ondrej/php
$ sudo apt update
$ sudo apt install nginx php7.0  php7.0-fpm  php7.0-cli php7.0-common php7.0-zip php7.0-xml php7.0-mailparse php7.0-mcrypt php7.0-intl php7.0-mbstring php7.0-imap php7.0-apcu  php7.0-mysql mariadb-server mariadb-client 	
-------- On CentOS / RHEL 8 -------- 
# dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
# dnf install http://rpms.remirepo.net/enterprise/remi-release-8.rpm
# dnf install dnf-utils
# dnf module reset php
# dnf module enable php:remi-7.4
# dnf install nginx php  php-fpm  php-cli php-common php-zip php-xml php-mailparse php-mcrypt php-mbstring php-imap php-apcu php-intl php-mysql mariadb-server 


-------- On CentOS / RHEL 7 -------- 
# yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
# yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
# yum install yum-utils
# yum-config-manager --enable remi-php74
# yum install nginx php  php-fpm  php-cli php-common php-zip php-xml php-mailparse php-mcrypt php-mbstring php-imap php-apcu php-intl php-mysql mariadb-server   

2. Una vez instalada la pila LEMP, puede iniciar los servicios Nginx, PHP-fpm y MariaDB, habilitarlos y verificar si estos servicios están en funcionamiento.

-------- On Debian / Ubuntu -------- 
$ sudo systemctl start nginx php7.0-fpm mariadb
$ sudo systemctl status nginx php7.0-fpm mariadb
$ sudo systemctl enable nginx php7.0-fpm mariadb

-------- On CentOS / RHEL -------- 
# systemctl start nginx php-fpm mariadb
# systemctl status nginx php-fpm mariadb
# systemctl enable nginx php-fpm mariadb

3. Si su sistema tiene un firewall habilitado de manera predeterminada, debe abrir el puerto 80 en el firewall para permitir las solicitudes de los clientes al servidor web Nginx, como se indica a continuación.

-------- On Debian / Ubuntu -------- 
$ sudo ufw allow 80/tcp
$ sudo ufw reload

-------- On CentOS / RHEL -------- 
# firewall-cmd --permanent --add-port=80/tcp
# firewall-cmd --reload

Paso 2: Asegure el servidor MariaDB y cree la base de datos de Mautic

4. De forma predeterminada, la instalación de la base de datos MariaDB no es segura. Para protegerlo, ejecute el script de seguridad que viene con el paquete binario.

$ sudo mysql_secure_installation

Se le pedirá que establezca una contraseña de root, elimine usuarios anónimos, desactive el inicio de sesión de root de forma remota y elimine la base de datos de prueba. Después de crear una contraseña de root, responda yes/y al resto de preguntas.

5. Luego inicie sesión en la base de datos MariaDB y cree una base de datos para Mautic.

$ sudo mysql -u root -p

Ejecute estos comandos para crear la base de datos; utilice sus propios valores aquí y establezca una contraseña más segura en un entorno de producción.

MariaDB [(none)]> CREATE DATABASE mautic;
MariaDB [(none)]> CREATE USER 'mauticadmin'@'localhost' IDENTIFIED BY '[email protected]!#254mauT';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON mautic.* TO 'mauticadmin'@'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exit

Paso 3: descargue los archivos de Mautic al servidor web Nginx

6. La última versión (versión 2.16 en el momento de escribir este artículo) de Mautic está disponible como un archivo zip, vaya a la página de descarga, luego proporcione sus detalles en un formulario breve y haga clic en el enlace de descarga.

7. Una vez que haya descargado, cree un directorio para almacenar los archivos de Mautic para su sitio en la raíz de documentos de su servidor web (esta será la base de su aplicación o el directorio raíz).

Luego descomprima el archivo comprimido en el directorio raíz de su aplicación y defina los permisos correctos en el directorio raíz y los archivos mautic, de la siguiente manera:

$ sudo mkdir -p /var/www/html/mautic
$ sudo unzip 2.16.0.zip -d /var/www/html/mautic
$ sudo chmod -R 775 /var/www/html/mautic
$ sudo chown -R root:www-data /var/www/html/mautic

Paso 4: Configure PHP y Nginx Server Block para Mautic

8. En este paso, debe configurar el ajuste date.timezone en su configuración de PHP, establecerlo en un valor aplicable a su ubicación actual (por ejemplo, "África/Kampala"), como se muestra en la captura de pantalla.

-------- On Debian / Ubuntu -------- 
$ sudo vim /etc/php/7.0/cli/php.ini
$ sudo vim /etc/php/7.0/fpm/php.ini

-------- On CentOS / RHEL -------- 
# vi /etc/php.ini

9. Luego reinicie el servicio php-fpm para efectuar los cambios.

$ sudo systemctl restart php7.4-fpm   [On Debian / Ubuntu]
# systemctl restart php-fpm           [On CentOS / RHEL]

10. A continuación, cree y configure un bloque de servidor Nginx para servir la aplicación Mautic, en /etc/nginx/conf.d/.

 
$ sudo vi /etc/nginx/conf.d/mautic.conf

Agregue la siguiente configuración en el archivo anterior, para el propósito de esta guía, usaremos un dominio ficticio llamado mautic.tecmint.lan (puede usar su propia prueba o dominio registrado completo):

server {
	listen      80;
	server_name mautic.tecmint.lan;
	root         /var/www/html/mautic/;
	index       index.php;

	charset utf-8;
	gzip on;
	gzip_types text/css application/javascript text/javascript application/x-javascript 	image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;
	location / {
		try_files $uri $uri/ /index.php?$query_string;
	}
	location ~ \.php {
		include fastcgi.conf;
		fastcgi_split_path_info ^(.+\.php)(/.+)$;
		fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
	}
	location ~ /\.ht {
		deny all;
	}
}

11. Guarde el archivo y luego reinicie el servidor web Nginx para que funcionen los cambios anteriores.

$ sudo systemctl restart nginx

12. Debido a que estamos usando un dominio ficticio, necesitamos configurar un DNS local usando el archivo de los hosts (/ etc/hosts), para que funcione, como se muestra en la siguiente captura de pantalla.

192.168.1.112  mautic.tecmint.lan

13. Luego use la siguiente URL para acceder al instalador web de Mautic. En primer lugar, comprobará su sistema para asegurarse de que se cumplen todos los requisitos (si ve algún error o advertencia, corríjalo antes de continuar, especialmente en un entorno de producción).

http://mautic.tecmint.lan  

Si su entorno está listo para mautic, haga clic en Siguiente paso.

14. A continuación, proporcione los parámetros de conexión del servidor de su base de datos y haga clic en Siguiente paso. El instalador verificará la configuración de la conexión y creará la base de datos.

Tenga en cuenta que en esta etapa, si obtiene un "Error de tiempo de espera de puerta de enlace 504", es porque Nginx no obtiene ninguna respuesta de PHP-FPM mientras se crea la base de datos; se agota el tiempo.

Para solucionar esto, agregue la siguiente línea resaltada en el bloque de ubicación PHP dentro del archivo de configuración del bloque del servidor mautic /etc/nginx/conf.d/mautic.conf.

location ~ \.php {
                include fastcgi.conf;
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_read_timeout 120;
                fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;

15. Luego reinicie los servicios Nginx y php-fpm para que el cambio reciente surta efecto.

$ sudo systemctl restart nginx php7.4-fpm   [On Debian / Ubuntu]
# systemctl restart nginx php-fpm           [On CentOS / RHEL]

16. A continuación, cree su cuenta de usuario administrador de la aplicación mautic y haga clic en Siguiente paso.

17. Como paso final, configure sus servicios de correo electrónico como se muestra en la siguiente captura de pantalla y haga clic en Siguiente paso.

17. Ahora inicie sesión en su aplicación mautic usando las credenciales de la cuenta de administrador.

18. En este punto, puede comenzar a automatizar el marketing de su empresa desde el panel de control de administración, como se muestra en la siguiente captura de pantalla.

Mautic es una plataforma de automatización de marketing líder. Todavía es un proyecto muy joven y muchas características, en las que puede pensar, aún no se han agregado. Si tuvo algún problema al instalarlo, háganoslo saber a través del formulario de comentarios a continuación. También comparta con nosotros sus pensamientos al respecto, especialmente en lo que respecta a las características que le gustaría que tuviera.