En este artículo, aprenderá a instalar Mautic, una herramienta de automatización de marketing de código abierto. Parte del proceso de configuración usará Easy Engine para automatizar la implementación de una pila LAMP.
Puede usar Mautic para crear clientes potenciales, administrar campañas de marketing en línea y páginas de destino.
Antes de comenzar, necesitará una instancia de servidor en la nube, ya que este tutorial está orientado a una configuración disponible públicamente lista para la producción y algunos pasos también requerirán acceso a un panel de DNS para configurar la configuración de su dominio (cómo configurar la configuración de su dominio público no es cubiertos aquí).
Puede comenzar con un VPS que cumpla con los siguientes requisitos:
- Ubuntu 16.04.03 64 bits o la última disponible
- 1 CPU
- 2GB RAM
- Disco duro de 30 GB
1. Comprobar la versión del sistema
una. Inicie sesión en su servidor y asegúrese de que el sistema esté actualizado.
ssh root@yourserverip
lsb_release -a
Ejemplo:
root@newvps:~# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.3 LTS
Release: 16.04
Codename: xenial
b. Ejecute una actualización del sistema si es necesario para instalar los últimos parches y actualizaciones del sistema.
apt update && apt upgrade -y
reboot
2. Verifique su configuración de DNS
una. Asegúrese de que su configuración de DNS sea correcta con un registro A que apunte a la IP de su servidor y un subdominio "www" en un registro CNAME que apunte a su dominio.
dig www.yoursitedomain.net
Ejemplo:
user@workstation:~$ dig www.yoursitedomain.net
; <> DiG 9.9.5-9+deb8u14-Debian <> www.yoursitedomain.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 9405
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;www.yoursitedomain.net. IN A
;; ANSWER SECTION:
www.yoursitedomain.net. 300 IN CNAME yoursitedomain.net.
yoursitedomain.net. 60 IN A yourserverip
;; Query time: 96 msec
;; SERVER: 192.168.10.1#53(192.168.10.1)
;; WHEN: Sat Sep 16 03:56:05 CST 2017
;; MSG SIZE rcvd: 68
3. Configure el nombre de su VPS para que coincida con su dominio
una. Modifique los archivos DNS para Ubuntu como root.
ssh root@yourserverip
sudo -i
cp -av /etc/hostname /etc/hostname.orig
cp -av /etc/hosts /etc/hosts.orig
echo "yoursitedomain.net" > /etc/hostname
echo -e "\nyourserverip yoursitedomain.net yoursitedomain" >> /etc/hosts
hostname yoursitedomain.net
b. Reinicie la nueva instancia con la nueva configuración de DNS y vuelva a ingresar, la nueva configuración ya debería estar funcionando.
reboot
ssh root@yourserverip
4. Preparar el despliegue de la aplicación con Easy Engine
una. Instale Easy Engine usando la siguiente línea de comando como root.
sudo -i
wget -qO ee rt.cx/ee && sudo bash ee
b. Use Easy Engine para implementar MySQL, NGINX y PHP en el servidor, incluida la compatibilidad con Let's Encrypt.
ee site create yoursitedomain.net --mysql --letsencrypt
Ejemplo:
root@yoursitedomain:~# ee site create yoursitedomain.net --mysql --letsencrypt
Adding repository for MySQL, please wait...
Adding repository for NGINX, please wait...
Adding repository for PHP, please wait...
Updating apt-cache, please wait...
Installing packages, please wait...
Downloading MySQLTuner [Done]
Reload : postfix [OK]
Reload : nginx [OK]
Restart : php5.6-fpm[OK]
Reload : mysql [OK]
Running pre-update checks, please wait...
Setting up NGINX configuration [Done]
Setting up webroot [Done]
Setting up database [Done]
Reload : nginx [OK]
HTTP Auth User Name: easyengine
HTTP Auth Password : 4ZOQc2
Successfully created site http://yoursitedomain.net
Letsencrypt is currently in beta phase.
Do you wish to enable SSl now for yoursitedomain.net?
Type "y" to continue [n]:y
Please Wait while we fetch SSL Certificate for your site.
It may take time depending upon network.
Let's Encrypt successfully setup for your site
Your certificate and chain have been saved at /etc/letsencrypt/live/yoursitedomain.net/fullchain.pem
Configuring Nginx SSL configuration
Adding /var/www/yoursitedomain.net/conf/nginx/ssl.conf
Adding /etc/nginx/conf.d/force-ssl-yoursitedomain.net.conf
Added HTTPS Force Redirection for Site http://yoursitedomain.net
Creating Cron Job for cert auto-renewal
Reload : nginx [OK]
Congratulations! Successfully Configured SSl for Site https://yoursitedomain.net
Your cert will expire within 89 days.
root@yoursitedomain:~#
5. Descargar e Instalar Mautic
una. Descarga las fuentes de Mautic desde GitHub con el directorio web de la aplicación.
cd /var/www/yoursitedomain.net/
rm -rf htdocs
wget https://github.com/mautic/mautic/archive/master.zip
unzip master.zip
mv mautic-master htdocs
cd htdocs
b. Descargue e instale PHP Composer para completar el proceso de instalación.
apt -y install curl
curl -s https://getcomposer.org/installer | php
mv -v composer.phar /usr/local/bin/composer
composer install
cd ..
chown -R www-data: htdocs
6. Ajuste PHP, MySQL y Nginx para que funcionen con su aplicación Mautic
una. Obtenga la contraseña de root para su servidor MySQL.
cat /etc/mysql/conf.d/my.cnf
.
b. Acceda a su servidor MySQL y cree el usuario y la base de datos para Mautic.
mysql -uroot -p
CREATE DATABASE mautic_data;
CREATE USER 'mautic_user'@'localhost' IDENTIFIED BY 'RRl4$3W7fvpdKd#OVNV';
GRANT ALL PRIVILEGES ON mautic_data.* TO 'mautic_user'@'localhost';
Ejemplo:
root@yoursitedomain:/var/www/yoursitedomain.net# mysql -uroot -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 27
Server version: 10.1.26-MariaDB-1~xenial mariadb.org binary distribution
Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> CREATE DATABASE mautic_data;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> CREATE USER 'mautic_user'@'localhost' IDENTIFIED BY 'RRl4$3W7fvpdKd#OVNV';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> GRANT ALL PRIVILEGES ON mautic_data.* TO 'mautic_user'@'localhost';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> quit
Bye
C. Actualice la configuración de PHP para PHP FastCGI.
sed -i "47ialways_populate_raw_post_data = -1" /etc/php/5.6/fpm/php.ini
d. Actualice la configuración de Nginx para solucionar un problema con el acceso de Mautic a sus activos cuando se habilita una redirección a la versión del sitio SSL.
cat "rewrite ^/index.php/(.*)$ /$1 last;" > /var/www/yoursitedomain.net/conf/nginx/urlfix.conf
mi. Asegúrese de que cambiar la propiedad del archivo esté configurado correctamente.
chown www-data: /var/www/yoursitedomain.net/conf/nginx/urlfix.conf
F. Reinicie los servicios PHP FastCGI y Nginx.
service php5.6-fpm restart
systemctl restart nginx
7. Ejecute el asistente de configuración de Mautic
una. Abra un navegador e ingrese esta URL:https://yoursitedomain.net para iniciar el asistente de configuración.
b. Durante la configuración, asegúrese de ingresar la configuración de su base de datos, como en el cuadro a continuación:
Configuración de la base de datos
usuario:mautic_user
pase :RRl4$3W7fvpdKd#OVNV
db:mautic_data
C. Configure un usuario administrador y una contraseña para la aplicación (no deben ser los mismos que el usuario y la contraseña de su base de datos)
Administrador de Mautic
usuario:mautic-admin
pasar:F1e#vQueb+Jouwegibyu
d. Una vez que el asistente de configuración haya terminado, regrese a la consola del servidor y agregue estos cronjobs.
# Setting up Mautic cron jobs,
# please refer to https://www.mautic.org/docs/en/setup/cron_jobs.html for further details
# Updating Contact Segments
0,15,30,45 * * * * /usr/bin/php /var/www/yoursitedomain.net/htdocs/app/console mautic:segments:update
# Campaign Updates
5,20,35,50 * * * * /usr/bin/php /var/www/yoursitedomain.net/htdocs/app/console mautic:campaigns:rebuild
# Email Delivery
10,25,40,55 * * * * /usr/bin/php /var/www/yoursitedomain.net/htdocs/app/console mautic:emails:send
C. Descargue e implemente la biblioteca de búsqueda de IP para finalizar la configuración de mautic.
php /var/www/yoursitedomain.net/htdocs/app/console mautic:iplookup:download
chown -R www-data: /var/www/yoursitedomain.net
service php5.6-fpm restart
systemctl restart nginx
En este punto, debe tener su servidor Mautic en funcionamiento, por lo que le recomiendo comenzar con la documentación oficial del sitio para aprender a configurar sus campañas y crear páginas de destino para su sitio de comercio electrónico.