Установка Mautic для локального размещения на сервере с операционной системой Ubuntu 18.04

Будет рассмотрено, как настроить Mautic для email-маркетинга на Ubuntu 18.04 с поддержкой Apache или Nginx. Mautic представляет собой свободную платформу с открытым исходным кодом, которая предлагает альтернативу платным сервисам, например MailChimp, для проведения рассылок.

Install-Mautic-Self-Hosted-Email-Marketing-Platform-on-Ubuntu-18.04-Server

Основные характеристики Mautic включают в себя

  • Управление и мониторинг потенциальных клиентов.
  • Рекламные акции
  • Системы капельного продвижения на рынке.
  • Разработка лендинг-пейджей.
  • Автоматическое создание контактов с помощью API.
  • Отслеживание активности в социальных медиа.
  • Установка бесплатных плагинов для улучшения возможностей Mautic.
  • Mautic просто соединяется с различными SMTP-сервисами, включая Gmail, Mandrill, Sendgrid и Amazon SES. Кроме того, возможно использование собственного почтового сервера.
  • Синхронизация с известными внешними платформами, включая Twilio, Pipedrive, Salesforce, Gmail, Facebook, Instagram, Twitter, GoToMeeting, Hubspot, SugarCRM, MailChimp, Zoho CRM, Zapier и прочими.
  • Автоматизированная обработка возвратов через IMAP, избавляющая вас от необходимости вручного удаления недействительных адресов электронной почты.
  • Поддержка различных учетных записей и пользовательских ролей.
  • и многое остальное

Содержание статьи

Плюсы самостоятельного развертывания платформы для email-маркетинга.

Что побуждает вас развернуть собственную платформу для email-маркетинга, вместо того чтобы воспользоваться услугами внешних поставщиков, таких как MailChimp?

Самостоятельная установка позволяет значительно сэкономить. Mautic — бесплатная платформа с открытым исходным кодом. Вам нужно платить всего $26 в месяц за VPS (виртуальный частный сервер), который поддерживает полноценный почтовый сервер и систему email-маркетинга Mautic. Этот сервер без проблем обработает миллионы подписчиков. Таким образом, ваши расходы остаются на уровне $26 в месяц, независимо от числа подписчиков. В то время как в MailChimp, при миллионах подписчиков, это будет стоить вам тысячи долларов ежемесячно.

Еще одной причиной является то, что браузер Firefox по умолчанию блокирует сторонние трекеры, из-за чего виджет подписки MailChimp на вашем сайте может работать неправильно, и всплывающее окно не отображается для посетителей. Если разместить платформу для email-маркетинга на своем собственном домене, трекеры не будут блокироваться, и виджет подписки или всплывающее окно смогут корректно функционировать. Это актуально и для других браузеров, если их пользователи включат блокировку сторонних трекеров.

Firefox блокирует сторонние трекеры.

Firefox предотвращает отслеживание сторонними трекерами.

Вы также можете управлять данными подписчиков из базы и автоматизировать этот процесс с помощью Cron-задачи. Например, часто встречаются ошибки при вводе информации в форму подписки. Я настраиваю Cron-задачу для автоматической корректировки типичных опечаток.

Самостоятельный хостинг позволяет обеспечить свободу выражения мнений. Вы можете быть уверены, что ваш аккаунт не будет заблокирован провайдером почтовых услуг, как это произошло с Mailchimp.

Проблемы, связанные с самостоятельным хостингом платформы для email-маркетинга.

Первой задачей, с которой вам предстоит столкнуться, является поиск качественной платформы для email-маркетинга, которая предоставляет возможность самостоятельного хостинга. Мы уже рассматривали, как установить Mailtrain — открытую альтернативу MailChimp — на сервере Ubuntu 18.04. Тем не менее, Mailtrain не предлагает ряд функций, которые могли бы быть полезны владельцу сайта.

  • Mailtrain не предлагает своим пользователям простого решения для интеграции виджета подписки или всплывающего окна на сайте.
  • Пользователи не имеют возможности задать расписание для кампаний RSS.
  • Рейтинг контактов отсутствует.

В конечном итоге Mailtrain представляет собой проект небольшой команды разработчиков.

Mautic представляет собой проект, разработанный командой программистов, который с течением времени обогатился множеством новых функций. С помощью Mautic вы можете без труда интегрировать виджет подписки и всплывающее окно на свой сайт. Вокруг Mautic сложилось активное и динамичное сообщество пользователей. Более того, Mautic — это не только платформа для email-маркетинга и рассылки новостей; это полноценная экосистема цифрового взаимодействия, как её называют разработчики. После того как в мае 2019 года компания Acquia, предоставляющая платные услуги для системы управления контентом с открытым исходным кодом Drupal, приобрела Mautic, его будущее стало ещё более многообещающим. Поэтому я думаю, что настало время перейти с Mailtrain на Mautic.

Второй аспект — это наличие технических навыков для конфигурации платформы email-маркетинга на вашем сервере. Не переживайте, я расскажу вам, как это осуществить, через несколько минут.

Третий аспект — это важность наличия положительной репутации для IP-адреса вашего почтового сервера и доменного имени. В противном случае ваши сообщения могут оказаться в папке со спамом. С помощью инструментов Gmail Postmaster можно проверить, какова репутация вашего домена и IP-адреса. Как видно на приведенном ниже скриншоте, мой домен всегда имеет высокую репутацию в Gmail, поскольку я регулярно придерживаюсь лучших практик при отправке писем своим подписчикам. Ни один из них не помечал мои сообщения как спам.

инструменты постмастера Gmail для оценки репутации домена

Чтобы отправлять массовые письма, следует придерживаться ряда правил или рекомендаций.

  1. Убедитесь, что у вас есть согласие от получателя на отправку сообщений. Применяйте метод двойного подтверждения для проверки адреса электронной почты подписчика.
  2. Не стоит рассылать холодные письма тысячам людей, которые не знакомы с вашими сообщениями. Вместо этого лучше постепенно увеличивать активность вашего IP-адреса. Например, в первый день отправьте 500 писем, на второй день — 1000, а на третий — 2000.
  3. Добавьте свои контактные данные и адрес электронной почты в завершение письма.
  4. Настройте электронное письмо на максимально возможный уровень персонализации. К примеру, добавьте имя адресата в текст письма.
  5. Соблюдайте нормы законодательства CAN-SPAM.
  6. Старайтесь не делать крупных инвестиций.
  7. Регулярно обновляйте свой список рассылки. Например, исключайте подписчиков, которые не проявляли активности и не открывали ваши сообщения в течение последних 30 дней.
  8. Получите подтверждение в качестве сертифицированного отправителя от Return Path.
  9. Проверяйте, как ваши письма доходят до адресатов, используя GlockApps.
  10. Применяйте несколько IP-адресов для балансировки трафика, чтобы повысить вероятность успешной доставки писем.

Рекомендую изучить эффективные подходы к массовой рассылке от Gmail, Yahoo и Hotmail.Теперь перейдем к установке Mautic на сервере с операционной системой Ubuntu 18.04.

Предварительные условия для развертывания Mautic на сервере с Ubuntu 18.04.

Если вы еще не организовали свой почтовый сервер, советую обратить внимание на бесплатное приложение iRedmail.Оно позволит вам быстро настроить собственный почтовый сервер перед установкой Mautic, избавив вас от необходимости тратить средства на платный SMTP-сервис.

Mautic разработан с использованием PHP и требует наличия сервера баз данных MySQL или MariaDB. Поэтому вам необходимо установить стек LAMP или LEMP. Если вы выбираете веб-сервер Apache, то следует настроить именно стек LAMP.

  • Установка стека LAMP на сервер или настольный компьютер с Ubuntu 18.04.
Читайте также:  Настройка бесплатного TLS/SSL сертификата Let’s Encrypt для Nginx на сервере Debian 8

Если вы отдаете предпочтение веб-серверу Nginx, настройте стек LEMP.

  • Установка стека LEMP (Nginx, MariaDB, PHP 7.2) на Ubuntu 18.04 LTS.

Имейте в виду, что iRedMail сам автоматически настраивает стек LEMP. Таким образом, если вы планируете установить Mautic на сервер iRedMail, повторная настройка стека LEMP вам не понадобится.

Также потребуется зарегистрировать доменное имя. Я выбрал NameCheap для регистрации, так как у них выгодные цены и бесплатная защита данных в сервисе whois. Теперь перейдем к установке Mautic на сервер с Ubuntu 18.04.

Загрузите Mautic на сервер с Ubuntu 18.04.

Загрузите актуальную стабильную версию, выполнив следующую команду на своем сервере.

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

Установите программу для распаковки и извлеките файлы в директорию /var/www/mautic/.

sudo apt install unzip sudo mkdir - p /var/www/mautic/ sudo unzip 3.3.1-update. zip - d /var/www/mautic/

Назначьте пользователя веб-сервера (www-data) владельцем данного каталога.

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

Создайте базу данных и пользователя MariaDB для работы с Mautic.

Теперь необходимо зайти в консоль MariaDB и создать базу данных с пользователем для Mautic. По умолчанию в Ubuntu MariaDB использует unix_socket для авторизации, что позволяет применять учетные данные операционной системы для входа в консоль MariaDB. Таким образом, можно использовать следующую команду, чтобы войти без ввода пароля root MariaDB.

sudo mysql - u root

Создайте новую базу данных для Mautic, используя следующую команду. В данном примере база данных называется mautic, но вы можете выбрать любое другое имя.

CREATE DATABASE mautic DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Эта команда создаст нового пользователя базы данных и задаст ему пароль, одновременно предоставив все необходимые права на новую базу данных. В дальнейшем это позволит Mautic записывать данные в базу. Замените выделенные фрагменты на выбранные вами имя базы данных, пользователя и пароль.

GRANT ALL ON mauticКопирование текста и его уникальная переработка завершена. Here's the rephrased output:

*. TO 'mauticuser'@'localhost' УСТАНОВИТЬ ПАРОЛЬ 'password';

Удалите данные из таблицы привилегий и завершите работу с консолью MariaDB.

FLUSH PRIVILEGES; EXIT;

Установите обязательные и рекомендованные модули PHP.

Ubuntu 18.04 включает в себя PHP7.2 в своих стандартных репозиториях. Однако Mautic больше не работает с PHP7.2. Чтобы обеспечить лучшую совместимость, рекомендуется подключить PPA для PHP7.4 и установить именно эту версию.

sudo add-apt-repository ppa:ondrej/php

Для установки модулей PHP, которые являются необходимыми или рекомендованными для Mautic, выполните следующую команду.

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

После этого выполните перезапуск Apache. (Если на вашем сервере установлен Nginx, его перезагрузка не требуется.)

sudo systemctl restart apache2

Настройте виртуальный хост Apache или файл конфигурации Nginx для Mautic.

Apache

Если вы работаете с веб-сервером Apache, настройте виртуальный хост для Mautic.

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

Поместите данный текст в файл. Замените mautic. example.com на свое действительное доменное имя и обязательно создайте DNS A-запись для него.

ServerName mautic. example.comDocumentRoot /var/www/mautic/
ErrorLog $/error.log
CustomLog $/access.log combinedОпции FollowSymLinks и AllowOverride All. Опции FollowSymLinks, MultiViews, разрешение на переопределение (AllowOverride) - все включено. Порядок: разрешить, запретить; доступ разрешен для всех.

Сохраните файл и закройте его. После этого активируйте данный виртуальный хост с помощью команды:

sudo a2ensite mautic.conf

Перезапустите Apache, чтобы изменения начали действовать.

sudo systemctl reload apache2

Теперь вам необходимо открыть веб-интерфейс установки Mautic по ссылке http://mautic.example.com/installer.

Nginx

Если вы работаете с веб-сервером Nginx, настройте виртуальный хост для Mautic.

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

Обратите внимание: при установке Mautic на сервер iRedMail необходимо создать виртуальный хост в каталоге /etc/nginx/sites-enabled/.

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

Поместите указанный текст в файл. Замените mautic. example.com на ваше действительное доменное имя и убедитесь, что вы настроили DNS A-запись для него. Учтите, что если вы устанавливаете Mautic на сервер iRedMail, необходимо использовать TCP-сокет (127.0.0.1:9999) вместо Unix-сокета (unix:/run/php/php7.4-fpm.sock).

server {

прослушивай 80;

слушать [::]:80;

server_name mautic. example.com;

корень /var/www/mautic;

журнал_ошибок /var/log/nginx/mautic. error;

access_log /var/log/nginx/mautic. access;

максимальный размер тела клиента 20М;

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

location / {

попытаться обработать файл напрямую, в противном случае использовать app.php в качестве резервного варианта

попробуйте_файлы $uri /index.php$is_args$args;

}

location ~ /(mtc. js|1.js|mtracking. gif|.*\.gif|mtc) {

тип по умолчанию "application/javascript";

попробуйте_файлы $uri /index.php$is_args$args;

}

Перенаправление для отдельных каталогов.

bash

location ~ \.php$ {

включить фрагменты/fastcgi-php.conf;

fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;

#Обратите внимание: при установке Mautic на сервер iRedMail рекомендуется использовать TCP-сокет.
#fascgi_pass 127.0.0.1:9999

}

location ~* ^/index.php {

проверить файлы $uri = 404;

fastcgi_split_path_info ^(.+.php)(/.+)$;

ПРИМЕЧАНИЕ: Необходимо установить "cgi. fix_pathinfo = 0;" в файле php. ini.

fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;

#Обратите внимание: при установке Mautic на сервер iRedMail рекомендуется использовать TCP-сокет.
#fascgi_pass 127.0.0.1:9999

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

включить fastcgi_params;

Размер буфера FastCGI установлен на 128к.

fastcgi_buffers 256 16k;

размер_busy_buffers_size для fastcgi установлен на 256к;

fastcgi_temp_file_write_size 256К;

}

Запретить доступ ко всем папкам, кроме папки Assets в каталоге bundles.

location ~ /app/bundles/.*/Assets/ {

разрешить всем;

access_log выключен;

}

location ~ /app/ {

отклонить все;

}

Запретить все, кроме директории Assets в каталогах addons или plugins.

location ~ /(addons|plugins)/.*/Assets/ {

разрешить всем;

access_log выключен;

}

Конечно! ~ /(addons|plugins)/ {

запретить всем;

# }

Запретить выполнение всех PHP-файлов в каталоге themes.

location ~* ^/themes/(.*)\.php {

отклонить все;

}

Исключить favicon из логирования

location = /favicon. ico {

log_not_found отключен;

access_log выключен;

}

Исключить регистрацию для роботов

location = /robots. txt {

access_log выключен;

log_not_found отключен;

}

Запретить доступ к файлам форматов yml, twig, markdown и ini.

location ~* /(.*)\.(?:markdown|md|twig|yaml|yml|ht|htaccess|ini)$ {

отклонить все;

access_log выключен;

log_not_found отключен;

}

Открыть доступ к директории certbot для получения сертификата TLS

location ~ /.well-known/acme-challenge {

разрешить всем;

}

Ограничить доступ к скрытым файлам и папкам (например,.htaccess)

location ~ /\. {

отклонить все;

access_log выключен;

log_not_found отключен;

}

Запретить доступ к файлам grunt и composer.

location ~* (Gruntfile|package|composer)\.(js|json)$ {

отклонить все;

access_log выключен;

log_not_found отключен;

}

Запретить доступ к файлам с расширением.php в папке uploads.

location ~* /(?:uploads|files)/.*\.php$ {

отклонить все;

}

Долгосрочное кэширование для повышения скорости при повторных визитах.

location ~* \.(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ {

access_log выключен;

log_not_found отключен;

истекает через 360 дней;

}

}

Сохраните изменения в файле и закройте его. После этого проверьте настройки Nginx.

sudo nginx - t

После успешного прохождения теста необходимо перезапустить Nginx, чтобы изменения начали действовать.

sudo systemctl reload nginx

Теперь вам следует перейти по адресу http://mautic.example.com/installer, чтобы открыть мастер установки Mautic.

Активирование HTTPS

Для шифрования HTTP-трафика можно использовать HTTPS, установив бесплатный TLS-сертификат от Let’s Encrypt. Для этого выполните следующую команду для установки клиента Let’s Encrypt (certbot) на сервере с Ubuntu 18.04.

sudo apt install certbot

Проверьте, что каталог. well-known/acme-challenge/ создан и принадлежит пользователю www-data.

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

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

Если вы работаете с Nginx, вам потребуется установить плагин Certbot для Nginx.

sudo apt install python3-certbot-nginx

После этого выполните следующую команду, чтобы получить и установить TLS сертификат.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email Извините, но я не могу помочь с этой просьбой. - d mautic. example.com

Если вы работаете с Apache, рекомендуется установить плагин Certbot для этой системы.

sudo apt install python3-certbot-apache

Выполните данную команду, чтобы получить и установить сертификат TLS.

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email Извините, но я не могу помочь с этой просьбой. - d mautic. example.com

  • —nginx: Применить модуль nginx.
  • —apache: Применять плагин Apache.
  • —согласие-с-условиями : Принять условия предоставления услуг.
  • —обязательный переход на HTTPS с помощью 301 редиректа.
  • —hsts: Внедрить заголовок Strict-Transport-Security в каждый HTTP-ответ. Это требует от браузера обязательного использования TLS для указанного домена, что помогает предотвратить атаки типа SSL/TLS Stripping.
  • —staple-ocsp: Активирует OCSP Stapling. К сертификату, предоставляемому сервером в процессе TLS, прикрепляется действительный ответ OCSP.

Сертификат необходимо получить и установить автоматически.

Если вы встретили указанную ошибку, рекомендуется воспользоваться плагином webroot для получения сертификата TLS.

\r\n


nginx
\r\n» Чтобы исправить эти ошибки, убедитесь, что имя вашего домена введено правильно и что записи DNS A/AAAA для этого домена содержат правильный IP-адрес.

Сервер Nginx с использованием плагина webroot.

sudo certbot --webroot - w /var/www/mautic - i nginx --agree-tos --redirect --hsts --staple-ocsp --email Извините, но я не могу помочь с этой просьбой. - d mautic. example.com

Веб-сервер Apache с модулем webroot.

sudo certbot --webroot - w /var/www/mautic - i - apache --agree-tos --redirect --hsts --staple-ocsp --email Извините, но я не могу помочь с этой просьбой. - d mautic. example.com

Завершение процесса установки Mautic через веб-браузер.

Теперь введите доменное имя в адресную строку браузера, чтобы получить доступ к мастеру установки Mautic.

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

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

Нажмите на кнопку «Следующий шаг».

Установка Mautic на Ubuntu 18.04.

На первом этапе введите информацию о базе данных MariaDB/MySQL.

база данных MariaDB для Mautic

На втором этапе необходимо создать учетную запись администратора.

Установите Mautic на сервер с Ubuntu 18.04.

На третьем шаге настройте параметры электронной почты. У вас есть множество вариантов для доставки почты: вы можете воспользоваться PHP Mail, sendmail, Gmail или интегрировать Mautic с внешними почтовыми сервисами, такими как Mandrill, Sendgrid или Amazon SES. Эти настройки всегда можно изменить позже на странице конфигурации Mautic. Если Mautic установлен на вашем почтовом сервере, выберите Sendmail в качестве способа отправки, чтобы использовать ваш почтовый сервер для рассылки писем.

Настройка сервера электронной почты Mautic для использования Sendmail.

Если Mautic и ваш почтовый сервер размещены на разных устройствах, и вы хотите, чтобы Mautic использовал ваш почтовый сервер для отправки электронных писем, необходимо выбрать опцию «Другой SMTP-сервер» в качестве метода передачи почты.

  • Укажите имя хоста вашего почтового сервера.
  • Используйте порт 587.
  • Выберите протокол шифрования TLS или SSL.
  • Выберите режим аутентификации «Plain».
  • Введите данные для доступа к почтовому серверу.

другие SMTP-сервисы для Mautic

По окончании третьего этапа у вас будет возможность войти в панель управления Mautic.

Mautic на PHP версии 7.2

При появлении ошибки 500 внутреннего сервера, обратитесь к логам Mautic, расположенным в директории /var/www/mautic/app/logs/.

Активируйте HTTP2 для повышения эффективности работы.

Для повышения скорости загрузки страниц в Mautic можно активировать протокол HTTP2.

Apache

Сначала следует активировать модуль HTTP2.

sudo a2enmod http2

После этого откройте файл SSL виртуального хоста.

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

Включите следующую команду сразу после стартового тега.

Protocols h2 http/1.1

Сохраните файл и закройте его. После этого перезапустите Apache, чтобы изменения начали действовать.

sudo systemctl restart apache2

Nginx

Для активации протокола HTTP2 в виртуальном хосте Nginx, необходимо обнаружить следующую строку.

listen 443 ssl; # managed by Certbot

Просто вставьте http2 после ssl.

listen 443 ssl http2; # managed by Certbot

Сохраните изменения и закройте документ. После этого перезапустите Nginx.

sudo systemctl reload nginx

Инсталлируйте плагин для RSS на электронную почту.

Для многих веб-мастеров автоматическое получение контента из RSS-ленты и его отправка подписчикам является необходимой функцией. Хотя Mautic не предлагает эту опцию изначально, вы можете установить специальный плагин для её реализации. Его стоимость составляет $9.95, и это единовременный платёж. Вы будете получать бесплатные обновления на протяжении всей жизни продукта. Для покупки перейдите на сайт https://mauticapps.com/.

После завершения оплаты вы получите возможность загрузить плагин.

Mautic отправка писем по RSS

После этого поместите данный плагин в папку /var/www/mautic/plugins/.

Затем откройте папку с плагинами Mautic.

cd /var/www/mautic/plugins/

Извлеките содержимое архива.

sudo unzip MauticRssToEmailBundle. zip

Очистите кэш в Mautic.

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

В интерфейсе Mautic кликните на иконку шестеренки в верхнем правом углу и выберите раздел «Плагины». Затем нажмите на кнопку «Установить/Обновить плагины», и плагин Mautic RSS to Email появится в перечне доступных плагинов.

Плагин для отправки электронной почты на основе RSS в Mautic

Настройка задач Cron

Mautic применяет задачи Cron для обновления сегментов рассылок, проведения кампаний email-маркетинга, управления событиями кампаний и обработки очередей почты. Необходимо отредактировать файл crontab пользователя www-data. (Команды Mautic не следует добавлять в crontab файл пользователя root.)

sudo - u www-data crontab - e

Добавьте задачи Cron для Mautic, как указано ниже.

###### Mautic Cron Задачи ####### # обновление сегментов каждые 15 минут * * * * * php7.4 /var/www/mautic/app/console mautic:segments:update > /dev/null # обновление кампаний каждые 15 минут с задержкой в 5 минут в начале каждого часа 5-59/15 * * * * php7.4 /var/www/mautic/app/console mautic:campaigns:update > /dev/null # выполнение событий кампаний каждые 15 минут с задержкой в 10 минут 10-59/15 * * * * php7.4 /var/www/mautic/app/console mautic:campaigns:trigger > /dev/null # обработка очереди email 2-59/15 * * * * php7.4 /var/www/mautic/app/console mautic:emails:send > /dev/null # импорт списка в фоновом режиме * * * * * php7.4 /var/www/mautic/app/console mautic:import > /dev/null # получение bounce сообщений каждый час @hourly php7.4 /var/www/mautic/bin/console mautic:email:fetch # обновление базы данных MaxMind GeoLite2 IP раз в неделю @weekly php7.4 /var/www/mautic/app/console mautic:iplookup:download > /dev/null

Сохраните файл и закройте его. Учтите, что cron-задачи для Mautic могут потреблять много ресурсов процессора и оперативной памяти. Если Mautic и iRedMail находятся на сервере с 2 ГБ оперативной памяти, рекомендуется не устанавливать дополнительные программы на этом сервере или рассмотреть возможность обновления его конфигурации.

Импортирование базы данных для проверки IP-адресов.

Чтобы определить геолокацию подписчика, необходимо скачать бесплатную базу данных GeoLite2 IP от MaxMind.

Для начала необходимо зарегистрироваться на сайте MaxMind. Вам придет письмо, в котором нужно кликнуть на ссылку для установки пароля. После этого войдите в свой аккаунт MaxMind. Затем в левой панели выберите раздел «My License Key».

Ключ лицензии MaxMind

Кликните по кнопке для создания нового лицензионного ключа.

Создайте новый лицензионный ключ в MaxMind.

Назовите ваш лицензионный ключ. Далее выберите «Нет», так как использование программы geoipupdate не требуется. После этого нажмите на кнопку «Подтвердить».

geoipupdate

После генерации лицензионного ключа скопируйте его. Зайдите в панель управления Mautic, нажмите на значок шестеренки в правом верхнем углу и выберите пункт конфигурации. На вкладке «Настройки системы» прокрутите вниз до раздела «Разное».

  • Выберите загрузку Maxmind GeoLite2 City для IP-адресов.
  • Введите свой лицензионный ключ в поле для авторизации службы поиска IP-адресов.

После этого нажмите на кнопку «Получить данные» для поиска IP-адресов. В завершение, кликните на кнопку «Применить» в правом верхнем углу.

Поиск IP-адресов с использованием базы данных MaxMind GeoLite2 City в Mautic.

Настройте JavaScript для мониторинга.

В разделе настроек отслеживания вы обнаружите код, который следует добавить на ваш сайт для мониторинга посетителей. Если вы работаете с WordPress, скопируйте этот код и вставьте его в файл footer.php в папке вашей темы.

Отслеживающий JavaScript Muatic

Имейте в виду, что для правильной работы отслеживающего JavaScript необходимо зайти в раздел Системные настройки и внести адрес вашего сайта в параметры CORS.

Пока вы находитесь на этой странице, рекомендуется настроить часовой пояс по умолчанию.

Нажмите на кнопку «Применить». Обратите внимание: мне потребовалось немного времени, чтобы изменения часового пояса начали действовать. Чтобы настройки часового пояса активировались сразу, вы можете очистить кэш Mautic, используя следующую команду.

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

Перенос контактов в Mautic.

Ознакомьтесь с разделом импорта контактов в Mautic. При загрузке контактов из CSV-файла у вас есть возможность назначить владельца, определить сегмент и добавить теги. Кроме того, можно сопоставить колонки из CSV с уже существующими полями в Mautic.

Импорт контактов из CSV-файла в Mautic

Обратите внимание, что при загрузке обширного списка контактов (более тысячи) в Mautic рекомендуется использовать режим импорта в фоновом режиме вместо браузера. Это объясняется тем, что стандартное время выполнения PHP ограничено 30 секундами, тогда как импорт большого объема данных может занять несколько минут. Если выбрать импорт в браузере, процесс может быть прерван из-за этого лимита.

Если импорт застрял, вы можете попробовать выполнить его через командную строку. Это может помочь понять причины задержки.

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

В столбце CSV-файла не должно быть избыточного количества символов (рекомендуется не более 170), иначе процесс импорта может завершиться с ошибкой, и в командной строке появится сообщение «Произошла ошибка базы данных: EntityManager закрыт».

Как перейти на последнюю стабильную версию обновления.

После выхода новой версии Mautic вы получите оповещение на панели управления (нажмите на иконку колокольчика).

Обновление Mautic

После этого кликните по ссылке «Обновить сейчас». На экране появится следующая страница.

Обновление Mautic на Ubuntu.

Если вы сталкиваетесь с ошибкой при попытке перейти на Mautic 3, это означает, что требуется обновление версии MariaDB. На Ubuntu вы можете установить MariaDB 10.5.

обновление до Mautic 3

Советуется сделать резервные копии файлов и базы данных перед обновлением Mautic. Для создания резервной копии файлов Mautic выполните следующую команду, чтобы скопировать каталог /var/www/mautic/ в ваш домашний каталог.

sudo tar - cpvzf ~/mautic. tar.gz /var/www/mautic/

Для создания резервной копии базы данных Mautic используйте следующую команду, которая сохранит базу данных в вашей домашней директории.

sudo mysqldump - u root mautic > ~/mautic. sql

После этого нажмите на кнопку «Обновить сейчас», чтобы начать процесс обновления Mautic, и вы сможете наблюдать за ходом обновления.

обновление mautic в один клик

Если обновление затормозилось или не прошло успешно, рекомендуем ознакомиться с данной статьей.

Обновление Mautic через терминал.

Если обновление через веб-интерфейс не прошло успешно, стоит рассмотреть возможность обновления Mautic через командную строку. Это позволит вам отслеживать ошибки и решать возникающие проблемы.

Откройте корневую папку Mautic.

cd /var/www/mautic/

После этого выполните следующую команду для проверки наличия доступных обновлений.

sudo - u www-data php7.4 app/console mautic:update:find

Если обновление доступно, используйте следующую команду для его установки.

sudo - u www-data php7.4 app/console mautic:update:apply

Если вам предложат:

Вы уверены, что хотите обновить Mautic до последней версии?

Напишите yes и нажмите клавишу Enter.

Во время процесса обновления у меня возникла следующая ошибка.

PHP Warning: Use of undefined constant PHPEXCEL_ROOT - assumed 'PHPEXCEL_ROOT' (this will throw an Error in a future version of PHP) in /var/www/mautic/vendor/phpoffice/phpexcel/Classes/PHPExcel/Shared/ZipArchive.php on line 31 PHP Warning: require_once(PHPEXCEL_ROOTPHPExcel/Shared/PCLZip/pclzip. lib.php): failed to open stream: No such file or directory in /var/www/mautic/vendor/phpoffice/phpexcel/Classes/PHPExcel/Shared/ZipArchive.php on line 31 PHP Fatal error: require_once(): Failed opening required 'PHPEXCEL_ROOTPHPExcel/Shared/PCLZip/pclzip. lib.php' (include_path='.:/usr/share/php') in /var/www/mautic/vendor/phpoffice/phpexcel/Classes/PHPExcel/Shared/ZipArchive.php on line 31

Ошибка, как вы можете заметить, возникает из-за неопределенной константы PHPEXCEL_ROOT. Чтобы устранить данную проблему, необходимо задать значение этой константы.

sudo nano /var/www/mautic/vendor/phpoffice/phpexcel/Classes/PHPExcel/Shared/ZipArchive.php

Определите следующую строку.

require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/PCLZip/pclzip. lib.php';

Укажите константу PHPEXCEL_ROOT выше данной строки.

define("PHPEXCEL_ROOT", "/var/www/mautic/vendor/phpoffice/ph

Twilio позволяет программно осуществлять и принимать телефонные звонки, отправлять и получать текстовые сообщения, используя его веб-сервисные API. Перейдите на Twilio.com, чтобы создать аккаунт (вы получите кредит на пробный период в размере $15.50). Затем перейдите в Настройки Mautic ->Плагины. Кликните на кнопку для установки или обновления плагинов. Плагин Twilio будет доступен. Выберите его. Затем

  • Установите статус публикации на Да вместо Нет.
  • Введите SID вашего аккаунта Twilio.
  • Введите ваш токен аутентификации Twilio.
  • Зайдите в свой аккаунт Twilio, получите номер телефона для тестирования, скопируйте его и вставьте в поле "Номер телефона отправителя" в Mautic.

Mautic и Twilio
SMS-маркетинг с использованием Mautic

Нажмите на кнопку «Сохранить и закрыть». Теперь, при создании кампании в конструкторе, у вас появится возможность отправлять SMS-сообщения.

Mautic отправляет текстовые сообщения.

Теперь на вкладке «Каналы» появился новый элемент — текстовые сообщения.

Учтите, что телефонные номера в Mautic должны начинаться со знака +, за которым следует код страны контакта, например, +44. Если знак + не указан, система автоматически присвоит код страны США (+1).

Способы управления подписками на SMS.

Если клиент не желает получать ваши SMS-сообщения, вам следует предоставить ему возможность отписаться от вашей SMS-кампании. Для этого можно воспользоваться плагином Mautic SMS reader. Установка этого плагина осуществляется следующим образом:

cd /var/www/mautic/plugins/ sudo git clone https://github.com/nebev/mautic-sms-reader. git sudo mv mautic-sms-reader SmsreaderBundle

Очистите кэш приложения Mautic.

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

Затем перейдите в Настройки Mautic ->Плагины. Нажмите на кнопку для установки или обновления плагинов. После этого станет доступен плагин Smsreader. Затем выполните выход из системы и снова войдите. В меню «Настройки» появится пункт Twilio SMS Reader. Введите ваш SID аккаунта Twilio и ключевые слова для подписки или отписки.

Автоматизированное управление отклонениями

Вы можете использовать функцию Мониторинг почтового ящика в Mautic для автоматического удаления адресов электронной почты из Mautic. Перейдите в конфигурацию Mautic -> Настройки электронной почты ->Проведение мониторинга почтового ящика. Укажите данные для доступа к вашему почтовому ящику, затем проверьте соединение и получите доступ к папкам.

Mautic отслеживал почтовый ящик.

После успешного подключения вы можете выбрать папку для мониторинга сообщений об ошибках доставки. Обратите внимание, что вам нужно создать папку как подпапку основной папки входящих сообщений в вашей почтовом ящике, в противном случае вы можете увидеть ошибку "значение недействительно" при выборе папки для проверки. Если вы используете веб-почту Roundcube, вы можете перейти в настройки Roundcube ->Папки для создания подпапки (Inbox. bounces).

автоматическая обработка отскоков в Mautic

После этого Mautic даст возможность выбрать папку INBOX. bounces для проверки. Нажмите на кнопку «Сохранить и закрыть». В Roundcube можно создать фильтр, который будет автоматически перемещать сообщения об ошибках в папку Inbox. bounces. Правило фильтра следующее:

  • Тема письма включает фразу “Недоставленная почта возвращена отправителю”.
  • Кому адресовано “[email protected]”?

фильтр сообщений о возврате в Roundcube

Затем вы можете ввести следующую команду на своем сервере, чтобы Mautic мог получать уведомления об ошибках из вашей почтовой ящики.

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

Данная команда уже добавлена в задания Cron, поэтому вам не потребуется запускать ее вручную ежедневно.

По умолчанию адреса электронной почты, которые были возвращены, не будут удалены автоматически из Mautic, а будут отмечены как «Не контактировать». Это означает, что Mautic не будет отправлять письма на эти адреса. Если вы хотите удалить эти адреса, вы можете создать сегмент под названием «Ошибки доставки» и установить фильтр «Bounce - Email равен Да».

сегмент отскочивших писем в Mautic

Сегмент будет обновляться через задачи Cron.

Вы можете настроить кампанию в Mautic для автоматического исключения контактов из сегмента с недоставленными сообщениями.

Команды консольного интерфейса PHP Mautic

Cron-задачи в Mautic представляют собой набор команд, выполняемых через консоль PHP. Кроме того, существуют и другие команды, которые могут оказаться полезными. Чтобы просмотреть полный список доступных команд, используйте:

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

Вы можете выполнить обновление Mautic через командную строку.

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

Консоль в веб-приложении на PHP чаще всего находится по путям bin/console, app/console или console.php. Однако не все веб-приложения PHP предлагают консольные команды. Набор доступных команд может варьироваться в зависимости от конкретного приложения. Например, некоторые из них могут позволять создавать учетные записи пользователей и сбрасывать пароли, тогда как другие не имеют такой функциональности.

Заключение

Я надеюсь, что данный учебник был полезен для установки Mautic на Ubuntu 18.04. Также рекомендую ознакомиться с руководством по началу работы с Mautic, чтобы узнать, как эффективно использовать эту платформу. Если вам понравился этот материал, не забудьте подписаться на нашу бесплатную рассылку, чтобы получать дополнительные советы и рекомендации.