GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Installa Mautic Self-Hosted Email Marketing su Ubuntu 20.04

Questo tutorial ti mostrerà come configurare la piattaforma di email marketing Mautic su Ubuntu 20.04 con server web Apache o Nginx. Mautic è un'alternativa open source gratuita ai fornitori di servizi di posta elettronica commerciali come MailChimp.

Caratteristiche Mautiche

  • Lead nurturing e monitoraggio
  • Campagne di marketing
  • Programmi Dripflow
  • Moderno generatore di email e pagine di destinazione (design reattivo, blocchi drag &drop, modelli MJML).
  • Test A/B per email e pagine di destinazione.
  • Crea segmenti per qualsiasi elenco in base alle condizioni da te definite (paese, stato, città, fuso orario, tipo di dispositivo, sistema operativo del dispositivo, punti, URL visitato, ecc.)
  • Puoi organizzare e classificare i segmenti.
  • Annunci automaticamente i contatti tramite API
  • Monitoraggio dei social media
  • Installa plugin per estendere le funzionalità di Mautic.
  • Mautic può essere facilmente integrato con servizi di inoltro SMTP di terze parti come Gmail, Mandrill, Sendgrid, Amazon SES. Puoi anche utilizzare il tuo server di posta.
  • Può integrarsi con molte app di terze parti popolari come Twilio, Pipedrive, Salesforce, Gmail, Facebook, Instagram, Twitter, GoToMeeting, Hubspot, SugarCRM, MailChimp, Zoho CRM, Zapier e molti altri.
  • Gestione automatica dei rimbalzi tramite IMAP, quindi non devi rimuovere manualmente indirizzi email inesistenti.
  • Invia rapporti alla tua email.
  • L'indirizzo Da:può essere personalizzato per e-mail.
  • Profilazione progressiva per i moduli (accodare campi illimitati, mostrare solo un numero specificato di campi, impostare un campo da mostrare sempre anche se il valore è noto).
  • Supporta più account utente e ruoli.
  • E molto altro

Vantaggi della piattaforma di email marketing in self hosting

Perché vuoi ospitare autonomamente una piattaforma di email marketing invece di utilizzare ESP (Email Service Provider) di terze parti come MailChimp?

Per cominciare, il self-hosting può farti risparmiare un sacco di soldi. Mautic è un software gratuito e open source. Devi solo pagare $ 26 al mese per il VPS (server privato virtuale), che può eseguire un server di posta completo e la piattaforma di email marketing Mautic. Può gestire facilmente milioni di abbonati. Quindi il tuo costo totale è sempre di $ 26 al mese, indipendentemente dal numero di abbonati che hai . Se possiedi milioni di abbonati su MailChimp, il costo sarebbe di migliaia di dollari al mese.

Un altro motivo è che il browser Firefox blocca i tracker di terze parti (tracciamento tra siti) per impostazione predefinita, quindi il widget di registrazione di MailChimp sul tuo sito Web potrebbe non funzionare correttamente e il pop-up di MailChimp non verrà mostrato ai tuoi visitatori. Ospitando la piattaforma di email marketing con il tuo nome di dominio, Firefox non blocca il tracker, quindi il tuo widget di registrazione o popup può funzionare correttamente. Questo vale anche se gli utenti di altri browser web decidono di bloccare tracker di terze parti.

Firefox blocca i tracker di terze parti

Inoltre, puoi manipolare le informazioni degli abbonati dal database e persino automatizzarlo con un processo Cron. Ad esempio, vedo spesso che ci sono errori di battitura quando un visitatore inserisce informazioni nel modulo di registrazione. Uso un lavoro cron per correggere automaticamente alcuni errori di battitura comuni.

Ultimo ma non meno importante, il self-hosting può proteggere la tua libertà di parola. Non devi mai preoccuparti che un provider di servizi di posta elettronica chiuda il tuo account come ha fatto Mailchimp.

Sfide della piattaforma di email marketing di self hosting

Il primo problema che devi affrontare è trovare una buona piattaforma di email marketing auto-ospitabile. In precedenza abbiamo discusso su come configurare Mailtrain, che è un'alternativa open source a MailChimp, sul server Ubuntu 20.04. Tuttavia, a Mailtrain mancano diverse funzionalità che un tipico proprietario di un sito vorrebbe avere.

  • Mailtrain non fornisce agli utenti un modo semplice per inserire il widget di registrazione o il popup sul sito web.
  • Gli utenti non possono impostare la pianificazione temporale per le campagne RSS.
  • Nessuna valutazione dei contatti.

Dopotutto, Mailtrain è solo un progetto di una manciata di sviluppatori di software.

Mautic, invece, è un progetto di un team di sviluppatori e ha sviluppato negli anni sempre più funzionalità. Hai un modo semplice per inserire il widget di registrazione e il popup sul tuo sito Web con Mautic. C'è anche una comunità vivace e molto attiva intorno ad esso. Inoltre, Mautic è più di una semplice piattaforma di newsletter/email marketing. È una piattaforma di esperienza digitale in piena regola, come la chiamano. Con Acquia (che è una società che offre servizi a pagamento per il sistema di gestione dei contenuti open source Drupal) che ha acquisito Mautic a maggio 2019, il futuro di Mautic non è mai stato così roseo. Quindi sento che è ora di passare da Mailtrain a Mautic.

La seconda sfida è avere le competenze tecniche per configurare la piattaforma di email marketing sul proprio server. Non preoccuparti, ti mostrerò come fare tra pochi istanti.

La terza sfida è che devi avere una buona reputazione per l'indirizzo IP del tuo server di posta e anche per il tuo nome di dominio. In caso contrario, le tue e-mail finiranno nella cartella spam. Gmail Postmaster Tools può mostrarti se hai una buona reputazione per il tuo nome di dominio e indirizzo IP. Come puoi vedere dallo screenshot qui sotto, ho sempre un'alta reputazione del dominio con Gmail, perché seguo sempre le migliori pratiche per inviare e-mail ai miei abbonati. È molto raro che i miei iscritti segnalino la mia email come spam.

Per inviare email in blocco, devi seguire queste regole o pratiche.

  1. Assicurati che il destinatario ti abbia autorizzato a inviare e-mail. Utilizza il double opt-in per verificare l'indirizzo email dell'abbonato.
  2. Non inviare email fredde a migliaia di persone che non hanno mai ricevuto email da te prima. Invece, devi riscaldare il tuo indirizzo IP. Ad esempio, invia 500 email il giorno 1, quindi invia 1000 email il giorno 2, invia 2000 email il giorno 3.
  3. Includi le tue informazioni di contatto e il tuo indirizzo di posta in fondo al messaggio di posta elettronica.
  4. Personalizza il più possibile il messaggio di posta elettronica. Ad esempio, includi il nome del destinatario nell'email.
  5. Conforme alla legge CAN-SPAM
  6. Evita allegati di grandi dimensioni.
  7. Pulisci la tua lista e-mail. Ad esempio, elimina gli abbonati email che non hanno aperto la tua email negli ultimi 30 giorni.
  8. Ottieni l'approvazione come mittente certificato Return Path.
  9. Verifica il posizionamento della tua email con GlockApps.

Si consiglia inoltre di migliorare la reputazione IP/dominio prima di inviare e-mail in blocco. Ora diamo un'occhiata a come installare Mautic sul server Ubuntu 20.04.

Prerequisiti per l'installazione di Mautic su Ubuntu 20.04 Server

Se non hai ancora il tuo server di posta, ti consiglio di utilizzare il programma gratuito iRedMail per configurare rapidamente il tuo server di posta prima di installare Mautic, in modo da non dover spendere soldi per il servizio di inoltro SMTP commerciale.

Mautic è scritto in PHP e si basa sul server di database MySQL/MariaDB. Quindi è necessario impostare uno stack LAMP o uno stack LEMP. Se preferisci Apache server web, quindi imposta lo stack LAMP.

  • Come installare lo stack LAMP su Ubuntu 20.04

Se preferisci Nginx server web, quindi imposta lo stack LEMP.

  • Come installare lo stack LEMP  su Ubuntu 20.04

Nota che iRedMail imposterà automaticamente uno stack LEMP per te, quindi se hai intenzione di installare Mautic sul tuo server iRedMail, non è necessario configurare nuovamente lo stack LEMP.

Hai anche bisogno di un nome di dominio. Ho registrato il mio nome di dominio da NameCheap perché il prezzo è basso e offrono protezione della privacy a whois gratuita per tutta la vita. Senza ulteriori indugi, installiamo Mautic sul server Ubuntu 20.04.

Passaggio 1:scarica Mautic sul tuo server Ubuntu 20.04

Scarica l'ultima versione stabile eseguendo il seguente comando sul tuo server.

wget https://github.com/mautic/mautic/releases/download/4.2.1/4.2.1-update.zip

Installa unzip utility e decomprimilo in /var/www/mautic/ directory.

sudo apt install unzip

sudo mkdir -p /var/www/mautic/

sudo unzip 4.2.1-update.zip -d /var/www/mautic/

Quindi imposta l'utente del server web (www-data ) come proprietario di questa directory.

sudo chown -R www-data:www-data /var/www/mautic/

Fase 2:crea un database MariaDB e un utente per Mautic

Accedi alla console MariaDB.

sudo mysql -u root

Quindi, crea un nuovo database per Mautic usando il comando seguente. Questo tutorial lo chiama mautic , puoi utilizzare il nome che preferisci per il database.

CREATE DATABASE mautic DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Il comando seguente creerà un utente e una password del database e allo stesso tempo concederà tutte le autorizzazioni del nuovo database al nuovo utente in modo che in seguito Mautic possa scrivere nel database. Sostituisci i testi rossi con il nome del database, il nome utente e la password preferiti.

GRANT ALL ON mautic.* TO 'mauticuser'@'localhost' IDENTIFIED BY 'password';

Svuota la tabella dei privilegi ed esci dalla console MariaDB.

FLUSH PRIVILEGES;

EXIT;

Fase 3:installa i moduli PHP richiesti e consigliati.

Esegui il comando seguente per installare i moduli PHP richiesti o consigliati da Mautic

sudo apt install php-imagick php7.4-fpm php7.4-mysql php7.4-common php7.4-gd php7.4-imap php7.4-imap php7.4-json php7.4-curl php7.4-zip php7.4-xml php7.4-mbstring php7.4-bz2 php7.4-intl php7.4-gmp

Se utilizzi il server web Apache, devi disabilitare il modulo PHP per Apache.

sudo a2dismod php7.4

Devi anche disabilitare il modulo MPM prefork in Apache.

sudo a2dismod mpm_prefork

Ora devi eseguire il comando seguente per abilitare tre moduli per poter usare PHP-FPM in Apache, indipendentemente dal fatto che mod_php è installato sul tuo server.

sudo a2enmod mpm_event proxy_fcgi setenvif

Quindi riavvia Apache.

sudo systemctl restart apache2

Fase 4:crea un host virtuale Apache o un file di configurazione Nginx per Mautic

Apache

Se utilizzi il server Web Apache, crea un host virtuale per Mautic.

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

Inserisci il seguente testo nel file. Sostituisci mautic.example.com con il tuo vero nome di dominio e non dimenticare di impostare un record DNS A per esso.

<VirtualHost *:80>
  ServerName mautic.example.com
  DocumentRoot /var/www/mautic/

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

  <Directory />
    Options FollowSymLinks
    AllowOverride All
  </Directory>

  <Directory /var/www/mautic/>
    Options FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all
  </Directory>

</VirtualHost>

Salva e chiudi il file. Quindi abilita questo host virtuale con:

sudo a2ensite mautic.conf

Ricarica Apache per rendere effettive le modifiche.

sudo systemctl reload apache2

Ora dovresti essere in grado di vedere la procedura guidata di installazione basata sul Web di Mautic su http://mautic.example.com/installer .

Nginx

Se utilizzi il server web Nginx, crea un host virtuale per Mautic.

sudo nano /etc/nginx/conf.d/mautic.conf

Nota :Se installi Mautic sul server iRedMail, dovresti creare l'host virtuale in /etc/nginx/sites-enabled/ directory.

sudo nano /etc/nginx/sites-enabled/mautic.conf

Inserisci il seguente testo nel file. Sostituisci mautic.example.com con il tuo vero nome di dominio e non dimenticare di creare un record DNS A per esso. Nota anche che se installi Mautic sul server iRedMail, dovresti usare il socket TCP (127.0.0.1:9999 ) invece del socket Unix (unix:/run/php/php7.4-fpm.sock ).

server {
   listen 80;
   listen [::]:80;
   server_name mautic.example.com;

   root /var/www/mautic;
   error_log /var/log/nginx/mautic.error;
   access_log /var/log/nginx/mautic.access;
   client_max_body_size 20M;

   index index.php index.html index.htm index.nginx-debian.html;

   location / {
     # try to serve file directly, fallback to app.php
     try_files $uri /index.php$is_args$args;
   }

   location ~ /(mtc.js|1.js|mtracking.gif|.*\.gif|mtc) {
       # default_type "application/javascript";
       try_files $uri /index.php$is_args$args;
   }

   # redirect some entire folders
     rewrite ^/(vendor|translations|build)/.* /index.php break;

   location ~ \.php$ {
     include snippets/fastcgi-php.conf;
     fastcgi_pass unix:/run/php/php7.4-fpm.sock;
     #Note: If you install Mautic on iRedMail server, you should use the TCP socket instead. 
     #fastcgi_pass 127.0.0.1:9999;
   }

   location ~* ^/index.php {
     # try_files $uri =404;
     fastcgi_split_path_info ^(.+\.php)(/.+)$;
     # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini

     fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
     #Note: If you install Mautic on iRedMail server, you should use the TCP socket instead.
     #fastcgi_pass 127.0.0.1:9999;
     fastcgi_index index.php;
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
     include fastcgi_params;

     fastcgi_buffer_size 128k;
     fastcgi_buffers 256 16k;
     fastcgi_busy_buffers_size 256k;
     fastcgi_temp_file_write_size 256k;
   }

    # Deny everything else in /app folder except Assets folder in bundles
    location ~ /app/bundles/.*/Assets/ {
        allow all;
        access_log off;
    }
    location ~ /app/ { deny all; }

    # Deny everything else in /addons or /plugins folder except Assets folder in bundles
    location ~ /(addons|plugins)/.*/Assets/ {
        allow all;
        access_log off;
    }
    # location ~ /(addons|plugins)/ { deny all; }

    # Deny all php files in themes folder
      location ~* ^/themes/(.*)\.php {
        deny all;
    }

    # Don't log favicon
    location = /favicon.ico {
        log_not_found off;
        access_log off;
    }

    # Don't log robots
    location = /robots.txt  {
        access_log off;
        log_not_found off;
    }

    # Deny yml, twig, markdown, init file access
    location ~* /(.*)\.(?:markdown|md|twig|yaml|yml|ht|htaccess|ini)$ {
        deny all;
        access_log off;
        log_not_found off;
    }

  # Allow access to certbot directory in order to obtain TLS certificate
     location ~ /.well-known/acme-challenge {
      allow all;
   }

  # Deny all attempts to access hidden files/folders such as .htaccess, .htpasswd, .DS_Store (Mac), etc...
    location ~ /\. {
        deny all;
        access_log off;
        log_not_found off;
    }

    # Deny all grunt, composer files
    location ~* (Gruntfile|package|composer)\.(js|json)$ {
        deny all;
        access_log off;
        log_not_found off;
    }

    # Deny access to any files with a .php extension in the uploads directory
        location ~* /(?:uploads|files)/.*\.php$ {
                deny all;
    }

     # A long browser cache lifetime can speed up repeat visits to your page
  location ~* \.(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ {
       access_log        off;
       log_not_found     off;
       expires           360d;
  }
}

Salva e chiudi il file. Quindi testa la configurazione di Nginx.

sudo nginx -t

Se il test ha esito positivo, ricarica Nginx per rendere effettive le modifiche.

sudo systemctl reload nginx

Ora dovresti essere in grado di vedere la procedura guidata di installazione basata sul Web di Mautic su http://mautic.example.com/installer .

Fase 5:abilitazione di HTTPS

Per crittografare il traffico HTTP, possiamo abilitare HTTPS installando un certificato TLS gratuito emesso da Let's Encrypt. Esegui il comando seguente per installare il client Let's Encrypt (certbot) sul server Ubuntu 20.04.

sudo apt install certbot

Assicurati che il .well-known/acme-challenge/ esiste una directory e www-data è il proprietario.

sudo mkdir -p /var/www/mautic/.well-known/acme-challenge

sudo chown www-data:www-data /var/www/mautic/.well-known/acme-challenge

Se usi Nginx , devi anche installare il plug-in Certbot Nginx.

sudo apt install python3-certbot-nginx

Quindi, esegui il comando seguente per ottenere e installare il certificato TLS.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d mautic.example.com

Se usi Apache , installa il plugin Certbot Apache.

sudo apt install python3-certbot-apache

Ed esegui questo comando per ottenere e installare il certificato TLS.

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d mautic.example.com

Dove

  • --nginx :usa il plugin nginx.
  • --apache :usa il plugin Apache.
  • --agree-tos :Accetta i termini di servizio.
  • --redirect :Forza HTTPS tramite reindirizzamento 301.
  • --hsts :aggiungi l'intestazione Strict-Transport-Security a ogni risposta HTTP. Forzare il browser a utilizzare sempre TLS per il dominio. Difende dallo stripping SSL/TLS.
  • --staple-ocsp :Abilita la pinzatura OCSP. Una risposta OCSP valida viene pinzata al certificato offerto dal server durante TLS.

Il certificato dovrebbe ora essere ottenuto e installato automaticamente.

Se riscontri il seguente errore, puoi provare a utilizzare il plug-in webroot per ottenere il certificato TLS.

IMPORTANT NOTES:
 - The following errors were reported by the server:

   Domain: mautic.your-domain.com
   Type:   unauthorized
   Detail: Invalid response from
   http://mautic.your-domain.com/.well-known/acme-challenge/oPobDrRkFbimsOD5Jbcx2VQfbMh9Hv3VueNhKdyhbcg
   [xx.xx.xx.xx]: "<html>\r\n<head><title>404 Not
   Found</title></head>\r\n<body>\r\n<center><h1>404 Not
   Found</h1></center>\r\n<hr><center>nginx</center>\r\n"

   To fix these errors, please make sure that your domain name was
   entered correctly and the DNS A/AAAA record(s) for that domain
   contain(s) the right IP address.

Server web Nginx con plugin webroot

sudo certbot --webroot -w /var/www/mautic -i nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d mautic.example.com

Server web Apache con plugin webroot

sudo certbot --webroot -w /var/www/mautic -i -apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d mautic.example.com

Fase 6:termina l'installazione di Mautic nel browser Web

Ora nella barra degli indirizzi del browser, digita il tuo nome di dominio per Mautic per accedere alla procedura guidata di installazione web.

https://mautic.your-domain.com/installer

o

https://mautic.your-domain.com/index.php/installer

Fare clic su Passaggio successivo. Se vedi il seguente avviso,

The memory_limit setting in your PHP configuration is lower than the suggested minimum limit of 512M. Mautic can have performance issues with large datasets without sufficient memory.

Quindi modifica il php.ini file.

sudo nano /etc/php/7.4/fpm/php.ini

Trova la riga seguente

memory_limit = 128M

Cambia il suo valore in 512M.

memory_limit = 512M

Inoltre, puoi impostare un fuso orario predefinito in PHP. Trova la riga seguente.

;date.timezone =

Cambialo in:

date.timezone = America/New_York

Puoi trovare il tuo formato di fuso orario sul sito Web ufficiale di PHP. Salva e chiudi il file. Quindi ricarica PHP7.4-FPM e l'avviso dovrebbe essere scomparso.

sudo systemctl reload php7.4-fpm

Nel passaggio 1, inserisci i dettagli del database MariaDB/MySQL. Per motivi di sicurezza, in questo passaggio puoi aggiungere un prefisso di tabella del database. Puoi usare un breve carattere casuale come prefisso della tabella come 6aC8_ . Si consiglia di terminare il prefisso con un trattino basso _ .

Se riscontri il seguente errore:

An error occured while attempting to add default data: There's no active transaction.

È necessario modificare il driver del database da MySQL PDO a MySQLi.

Nel passaggio 2, crea un account amministratore per l'interfaccia web di Mautic.

Nel passaggio 3, configura le impostazioni e-mail. Hai molte opzioni nel trasporto di posta. Puoi utilizzare PHP Mail , sendmail o Gmail oppure integra Mautic con servizi di posta elettronica di terze parti come Mandrill , Sendgrid , Amazon SES , ecc. Queste impostazioni possono sempre essere modificate dopo l'installazione nella pagina delle configurazioni di Mautic. Se Mautic è installato sul tuo server di posta, devi scegliere Sendmail come trasporto del mailer, quindi Mautic utilizzerà il tuo server di posta per inviare e-mail. La gestione delle email deve essere impostata su Invia immediatamente , quindi le email transazionali verranno inviate immediatamente e le email di marketing verranno messe in coda.

Se Mautic e il tuo server di posta sono in esecuzione su host diversi e desideri che Mautic invii e-mail tramite il tuo server di posta, devi scegliere Other SMTP server come trasporto di posta. Allora

  • Inserisci il nome host del tuo server di posta
  • Scegli la porta 587
  • Scegli la crittografia TLS.
  • Scegli Normale come modalità di autenticazione.
  • Inserisci le credenziali di accesso di un indirizzo email sul tuo server di posta.

Al termine del passaggio 3, puoi accedere alla dashboard di Mautic.

Se vedi l'errore interno del server 500, controlla i log di Mautic, che possono essere trovati in /var/www/mautic/app/logs/ directory. Se hai dimenticato la password del database Mautic, puoi trovarla in /var/www/mautic/app/config/local.php file.

Passaggio 7:abilita HTTP2 per migliorare le prestazioni

Puoi abilitare il protocollo HTTP2 per migliorare le prestazioni di caricamento delle pagine per Mautic.

Apache

Innanzitutto, devi abilitare il modulo HTTP2.

sudo a2enmod http2

Quindi apri il file dell'host virtuale SSL.

sudo nano /etc/apache2/sites-enabled/mautic-le-ssl.conf

Inserisci la seguente direttiva dopo l'apertura <VirtualHost *:443> tag.

Protocols h2 http/1.1

Salva e chiudi il file. Quindi riavvia Apache per rendere effettive le modifiche.

sudo systemctl restart apache2

Nginx

Per abilitare il protocollo HTTP2 nell'host virtuale Nginx, trova la riga seguente.

listen 443 ssl; # managed by Certbot

Aggiungi semplicemente http2 dopo ssl .

listen 443 ssl http2; # managed by Certbot

Salva e chiudi il file. Quindi ricarica Nginx.

sudo systemctl reload nginx

Fase 8:installa il plug-in RSS per e-mail

Per molti proprietari di siti, la possibilità di recuperare automaticamente il contenuto dal feed RSS e inviarlo agli abbonati è un must. Mautic non supporta questa funzionalità in modo nativo, ma puoi installare un plug-in per implementare questa funzionalità. Il plug-in costa $ 9,95. È un pagamento una tantum. Riceverai aggiornamenti gratuiti per tutta la vita. Vai su https://mauticapps.com/ per acquistare.

Dopo aver effettuato il pagamento, puoi scaricare il plugin.

Quindi carica questo plugin su /var/www/mautic/plugins/ directory.

Quindi, vai alla directory dei plugin di Mautic.

cd /var/www/mautic/plugins/

Decomprimi l'archivio.

sudo unzip MauticRssToEmailBundle.zip

Svuota la cache di Mautic.

sudo -u www-data php7.4 /var/www/mautic/bin/console cache:clear

Nella dashboard di Mautic, fai clic sull'icona a forma di ingranaggio nell'angolo in alto a destra e seleziona plugins . Fai clic su Install/Upgrade plugins e il plug-in Mautic RSS to Email verrà visualizzato nell'elenco dei plug-in.

Passaggio 9:aggiungi lavori Cron

Mautic si affida ai lavori di Cron per aggiornare i segmenti della mailing list, le campagne di email marketing, gli eventi della campagna ed elaborare le code di posta elettronica. Modifica il file crontab dell'utente www-data. (Non dovresti aggiungere comandi Mautic nel file crontab dell'utente root.)

sudo -u www-data crontab -e

E aggiungi lavori Mautic Cron come di seguito.

######  Mautic Cron Jobs #######

# update segments every 15 minutes
* * * * * php7.4 /var/www/mautic/bin/console mautic:segments:update  > /dev/null 

# update campaigns every 15 minutes starting with an offset of 5 minutes at the beginning of each hour
5-59/15 * * * * php7.4 /var/www/mautic/bin/console mautic:campaigns:update  > /dev/null 

# execute campaigns events every 15 minutes with an offset of 10 minutes
10-59/15 * * * * php7.4 /var/www/mautic/bin/console mautic:campaigns:trigger  > /dev/null 

# process email queue
2-59/15 * * * * php7.4 /var/www/mautic/bin/console mautic:emails:send  > /dev/null

# import list in the background
* * * * * php7.4 /var/www/mautic/bin/console mautic:import  > /dev/null

# Fetch bounce messages
@hourly php7.4 /var/www/mautic/bin/console mautic:email:fetch

# update MaxMind GeoLite2 IP Database once a week
@weekly php7.4 /var/www/mautic/bin/console mautic:iplookup:download  > /dev/null

Se hai una campagna e-mail transazionale che deve inviare e-mail immediatamente, dovresti aggiungere una riga come la seguente per eseguire la campagna ogni minuto.

# execute transactional campaign every minute.
* * * * * php7.4 /var/www/mautic/bin/console mautic:campaign:trigger -i campaign_id > /dev/null

Puoi trovare l'ID campagna dopo aver creato una campagna.

Salva e chiudi il file.

Si noti che i lavori cron Mautic possono utilizzare una discreta quantità di risorse CPU e RAM. Se Mautic e iRedMail sono installati su un server con 2 GB di RAM, non dovresti distribuire programmi aggiuntivi sul server, oppure puoi scegliere di aggiornare le specifiche del server.

Passaggio 10:scarica il database di ricerca IP

Per conoscere la geolocalizzazione dell'abbonato, è necessario scaricare il database di ricerca IP GeoLite2 gratuito di MaxMind.

Innanzitutto, devi creare un account su MaxMind. Maxmind ti invierà un'e-mail. Fare clic sul collegamento nell'e-mail per impostare una password, quindi accedere al proprio account MaxMind. Quindi, seleziona My License Key sulla barra di sinistra.

Fai clic su Genera nuova chiave di licenza pulsante.

Assegna un nome alla tua chiave di licenza. Quindi scegli No , perché non è necessario utilizzare il geoipupdate programma. Quindi fai clic su Confirm pulsante.

Una volta creata la chiave di licenza, copia la chiave di licenza. Vai alla dashboard di Mautic, fai clic sull'icona a forma di ingranaggio nell'angolo in alto a destra e seleziona configuration . In System settings scheda, scorri verso il basso fino a Miscellaneous Settings .

  • Seleziona Download di Maxmind GeoLite2 City per il servizio di ricerca IP
  • Nel IP lookup service authentication campo, inserisci il tuo indirizzo email Maxmind e la chiave di licenza Maxmind in questo modo:   [email protected]:JNQEpLFM8OCudQ== Devi usare i due punti come delimitatore.

Quindi, fai clic su Recupera archivio dati di ricerca IP pulsante. Infine, fai clic su Applica pulsante nell'angolo in alto a destra.

Fase 11:installa JavaScript di monitoraggio

Nelle tracking settings scheda, puoi trovare uno snippet di codice che puoi aggiungere al tuo sito web per monitorare i visitatori. Se utilizzi WordPress, copia questo snippet di codice e incollalo nel footer.php file nella cartella del tema di WordPress.

Tieni presente che devi accedere alle Impostazioni di sistema scheda e aggiungi l'indirizzo del tuo sito web nelle impostazioni CORS affinché il JavaScript di monitoraggio funzioni.

Già che ci sei, dovresti anche impostare il fuso orario predefinito in questa pagina.

Fai clic su Applica pulsante. Nota:ho scoperto che devo aspettare un po' di tempo prima che l'impostazione del fuso orario abbia effetto. Puoi svuotare la cache di Mautic con il seguente comando affinché l'impostazione del fuso orario abbia effetto immediato.

sudo rm /var/www/mautic/app/cache/* -rf

Per verificare se funziona, puoi utilizzare un altro dispositivo per visitare il tuo sito Web, quindi andare alla dashboard di Mautic. Se funziona, dovrebbero esserci nuove visite alla pagina visualizzate nella dashboard.

Importazione di contatti in Mautic

Controlla la pagina di importazione dei contatti Mautic. Quando importi i contatti da un file CSV, puoi scegliere il proprietario del contatto, segmento di contatti e tag. Puoi anche abbinare la colonna del file CSV ai campi dei contatti Mautic esistenti.

Tieni presente che quando importi un elenco di grandi dimensioni (più di mille contatti) in Mautic, dovresti scegliere l'importazione in background anziché l'importazione nel browser. Questo perché il tempo di esecuzione massimo predefinito di PHP è di 30 secondi, ma l'importazione di un elenco di grandi dimensioni può richiedere diversi minuti, quindi verrà interrotto dal limite PHP se scegli di importare nel browser.

Se il processo di importazione sembra non fare alcun progresso, puoi provare a importarlo dalla riga di comando. Potrebbe darti un'idea del perché non sta facendo progressi.

sudo -u www-data php7.4 /var/www/mautic/bin/console mautic:import

Una colonna nel file CSV non dovrebbe contenere troppi caratteri (non più di 170 caratteri, credo), altrimenti l'importazione potrebbe non riuscire e l'errore "Si è verificato un errore nel database:EntityManager è chiuso" verrà visualizzato nella riga di comando .

Come inviare e-mail in Mautic

In Mautic, puoi utilizzare 3 tipi di campagne email:

  • campagna automatizzata :per l'automazione del marketing
  • Campagna manuale :trasmette email a un intero segmento
  • Campagna RSS :se hai installato il plug-in RSS per e-mail

In Mautic, non esiste un concetto come un elenco di e-mail. Devi importare i contatti e raggrupparli in segmenti.

Come creare una campagna automatizzata (automazione del marketing)

  1. Vai a Contacts scheda e importa i tuoi contatti in Mautic.
  2. Vai al Segment scheda per creare un segmento
  3. Aggiungi i contatti nel segmento.
  4. Vai a Channels -> Email and create the template emails that you want to send to subscribers.
  5. Go to the Campaigns tab to create a campaign. The campaign builder allows you to create automated campaigns. Assign a segment to the campaign.
  6. Publish the campaign and you are done. Wait for the Emails to be sent.

How to Create Manual Campaign (Broadcast Emails)

Go to Channels -> Email , click the New button to create a new Segment Email.

  • Segment Emails can be sent manually (broadcast)
  • Template emails can not be sent manually. They are used with automated campaigns.

Once the segment email is created, you can click the send button to broadcast the emails to your subscribers.

How to Integrate with Twilio SMS Marketing

Twilio allows you to programmatically make and receive phone calls, send and receive text messages using its web service APIs. Go to Twilio.com to create an account (You will get $15.50 trial credit). Then go to Mautic Settings -> Plugins . Click the Install/Upgrade Plugins pulsante. The Twilio plugin will show up. Click on it. Then

  • Change the published status from No to Yes.
  • Enter your Twilio account SID
  • Enter your Twilio Auth Token
  • Go to your Twilio account to get a trial phone number , copy the number and paste it to the Sending Phone Number field in Mautic.

Click the Save & close pulsante. Now if you create a campaign in the campaign builder, you have the option to send SMS text messages.

And you have a new item called text messages under the channels tab.

Note that phone numbers stored in Mautic should have the + sign with the contact’s country code like +44 . If there’s no + sign, Mautic will automatically add the US country code (+1).

How to Handle SMS Subscriptions

If you a user don’t want to receive your SMS messages, you need to allow the user to unsubscribe from your SMS campaign. This can be achieved via the Mautic SMS reader plugin. To install this plugin, run

cd /var/www/mautic/plugins/

sudo git clone https://github.com/nebev/mautic-sms-reader.git

sudo mv mautic-sms-reader SmsreaderBundle

Clear the Mautic application cache.

sudo -u www-data php7.4 /var/www/mautic/bin/console cache:clear

Then go to Mautic Settings -> Plugins . Click the Install/Upgrade Plugins pulsante. The Smsreader plugin will show up. Next, log out and log back in. You will see the Twilio SMS Reader menu item in Settings. Enter your Twilio Account SID and the unsubscribe/re-subscribe keywords.

Unable to Send SMS?

If Mautic is unable to send SMS, and you see the following error message in the Cron job.

PHP Warning: Use of undefined constant CURLOPT_URL - assumed 'CURLOPT_URL'

It’s because your server is missing the PHP CURL extension. You can fix this error with the following command.

sudo apt install php7.4-curl

Automatic Bounce Handling

You can use the Monitored Inbox feature in Mautic to automatically remove email address from Mautic. Go to Mautic configuration -> Email settings -> Monitored Inbox . Enter your mailbox login credentials, then test connection and fetch folders.

Once the connection is successful, you can select the folder to monitor for bounce messages. Note that you need to create the folder as a sub-foler of the main inbox folder in your mailbox, otherwise you might see “the value is not valid ” error when selecting the folder to check. If you use the Roundcube webmail, you can go to the Roundcube settings -> Folders to create the sub folder (Inbox.bounces).

Then Mautic will allow you to choose the INBOX.bounces as the folder to check. Click the Save and close pulsante. In Roundcube, you can create a filter to automatically put bounce messages into the Inbox.bounces folder. The filter rule is as follows:

  • Subject contains “Undelivered Mail Returned to Sender”
  • To contains “[email protected]”

Next, you can run the following command on your server, so Mautic can fetch the bounce messages from the mailbox.

sudo -u www-data php7.4 /var/www/mautic/bin/console mautic:email:fetch

This command is already in the Cron jobs, so you don’t have to run it manually every day.

By default, bounced email addresses won’t be automatically remove from Mautic, but will be labeled as Do not Contact , so Mautic won’t send emails to those addreses. If you want to remove them, you can create a segment called bounced emails with the filter Bounce - Email equals Yes .

Segment will be updated by Cron jobs.

Next, you can create a campaign in Mautic to automatically delete the contacts in the bounced email segment.

Can’t Open the HTML Code Editor in Page Builder?

Since Mautic 4.0, the landing page builder uses the GraphJS framework and one of the problems is that you can open the HTML code editor only once. If you want to re-edit the code, it refuses to load the editor.

The trick is that you need to press F5 to refresh the web page and open the page builder again, then you will be able to open the HTML code editor.

Mautic PHP Console Commands

The Mautic Cron jobs are several PHP console commands. There are also other commands you might find useful. List available commands with:

sudo -u www-data php7.4 /var/www/mautic/bin/console

For example, you can update Mautic from the command line.

sudo -u www-data php7.4 /var/www/mautic/bin/console mautic:update:find
sudo -u www-data php7.4 /var/www/mautic/bin/console mautic:update:apply

The console in a PHP web application is usually available as bin/console , app/console , or console.php . Not every PHP web application provides console commands. The available commands are not the same for different web applications. For instance, some allow you to create users and reset passwords, while others may not allow you to do so.

Tips

  • If you use Adblocker, please disable it on your Mautic URL, or you might have problems editing landing pages in Mautic.
  • If you use Mautic in a production environment, it’s recommended that you wait some time to upgrade to the next version. For example, when version 4.3 comes out, I stay with version 4.2 . I only upgrade to version 4.3 when version 4.4 comes out.

Ubuntu
  1. Installa Podman su Ubuntu

  2. Come installare lo strumento di automazione del marketing Mautic su Ubuntu 20.04

  3. Installa il client di posta elettronica Geary su Ubuntu 20.04 - Guida passo passo?

  4. Installa Thunderbird su Ubuntu 20.04 - Metodo migliore?

  5. Installa Mautic su Ubuntu 14.04

Installa Jitsi Meet su Ubuntu 20.04 – Videoconferenza self-hosted

Come installare il software di automazione del marketing Mautic su Ubuntu 16.04

Come installare il client di posta elettronica desktop MailSpring su Ubuntu 20.04

Come installare il client di posta elettronica Thunderbird su Ubuntu 16.04 LTS

Come installare il client di posta elettronica Hiri su Ubuntu 20.04 LTS

Come installare lo strumento di automazione del marketing Mautic su Ubuntu 20.04