Маркетинговая автоматизация с открытым исходным кодом не обязательно означает передачу ваших данных SaaS-провайдеру. Mautic позволяет держать email-кампании, отслеживание контактов и взращивание лидов под вашим полным контролем. Запуск на Ubuntu 24.04 требует больше усилий, чем вход в HubSpot, но наградой становится полный контроль над вашим стеком, затратами и данными клиентов. Вы сами решаете, когда обновляться, как масштабироваться и где хранить информацию.
Перед началом направьте домен на свой сервер и убедитесь, что вашему экземпляру Ubuntu 24.04 выделено как минимум 2 ГБ оперативной памяти. Mautic — не легковесное приложение; PHP будет потреблять память при пересчете больших сегментов или обработке логики кампаний. Если вы планируете делать рассылки на тысячи контактов, 4 ГБ сделают работу гораздо более плавной.
Создание фундамента LEMP
Для работы Mautic требуется стек LEMP: Nginx, MySQL и PHP. В Ubuntu 24.04 по умолчанию установлена версия PHP 8.3, которая отлично работает с текущими релизами Mautic. Начните с обновления списка пакетов, затем установите Nginx и MySQL Server. После этого установите PHP-FPM и именно те расширения, которые необходимы Mautic:
- php-fpm
- php-mysql
- php-imap
- php-curl
- php-gd
- php-xml
- php-mbstring
- php-zip
- php-intl
- php-bcmath
Каждое расширение выполняет свою задачу. Расширение IMAP считывает сообщения о возвратах (bounce messages) и ответы на отписку. GD отвечает за обработку изображений для миниатюр. Mbstring и Intl управляют наборами символов и переводами на разные языки. BCMath обеспечивает точные математические вычисления для скоринга лидов и расчетов валют. Не пропускайте ни одно из них, иначе установщик выдаст ошибку на полпути.
Если Apache уже установлен, удалите его. Оба веб-сервера используют порты 80 и 443. Их одновременная работа приводит к скрытым сбоям, которые крайне сложно отлаживать. Чистая команда apt remove apache2, а затем apt autoremove полностью избавит вас от этой головной боли.
Настройка PHP и базы данных
Установщик Mautic и фоновые задачи потребляют много памяти. Откройте конфигурационный файл PHP-FPM по адресу /etc/php/8.3/fpm/php.ini и увеличьте лимит памяти до 512 МБ. Установите размер загрузки на 50 МБ, чтобы вы могли импортировать списки контактов и наборы ресурсов, не сталкиваясь с искусственными ограничениями. После сохранения перезапустите PHP-FPM, чтобы применить изменения. Заодно увеличьте post_max_size, чтобы он соответствовал вашему лимиту загрузки; в противном случае PHP будет отклонять большие многокомпонентные формы (multipart form submissions), даже если upload_max_filesize настроен правильно.
Далее создайте отдельную базу данных MySQL и пользователя. Назовите базу как угодно, но обязательно сохраните имя пользователя и пароль в менеджере паролей. Mautic хранит в этих таблицах каждое действие контакта, решение кампании и событие открытия письма, поэтому предоставление широких привилегий учетной записи с узкоспециализированными задачами ограничит риски в случае компрометации чего-либо еще на сервере.
Установка Mautic и инструментов
Скачайте последний стабильный релиз Mautic и распакуйте его в /var/www/html/mautic. Установите владельца директории www-data, чтобы веб-сервер мог записывать файлы кэша, логи и обновления локальной конфигурации. В Ubuntu это означает выполнение команды chown -R www-data:www-data /var/www/html/mautic.
Вам также понадобятся установленные на сервере Composer и npm. Composer разрешает зависимости PHP, и даже если вы развертываете систему из готового архива релиза, Composer понадобится вам позже для добавления плагинов из маркетплейса или выполнения ручных обновлений. npm важен, если вы захотите кастомизировать темы или собирать фронтенд-активы из исходников. Наличие обоих инструментов под рукой избавит вас от спешки, когда проект начнет развиваться.
Настройка Nginx и обеспечение безопасности
Ваш виртуальный хост Nginx должен указывать корневую директорию на /var/www/html/mautic и использовать index.php в качестве индекса по умолчанию. Направляйте PHP-запросы к Unix-сокету, который открывает PHP-FPM, обычно расположенному по адресу /run/php/php8.3-fpm.sock. Надежный блок сервера включает директиву try_files, которая перенаправляет запросы на главный контроллер, а также блок location, запрещающий доступ к скрытым файлам, начинающимся с точки. Mautic поставляется с файлами .htaccess, предназначенными для Apache, но Nginx их игнорирует, поэтому явные правила запрета в вашем виртуальном хосте обеспечат приватность логов и временных директорий.
Перед запуском веб-установщика получите TLS-сертификат. Используйте Certbot с плагином Nginx, чтобы получить бесплатный сертификат Let’s Encrypt и автоматически перенаправить HTTP-трафик на HTTPS. Mautic работает с учетными данными и данными контактов, поэтому нет никаких оправданий для передачи этой информации в открытом виде.
Cron-задачи — это двигатель системы
Этот шаг обязателен. Без запланированных задач Mautic — это просто панель управления, которая ничего не делает. Приложение ставит в очередь действия кампаний, отправку писем и пересчет сегментов в базе данных, а затем полагается на командную строку для их обработки.
Настройте задания cron для пользователя Mautic, чтобы он мог выполнять следующие фоновые задачи:
- Обновление сегментов
- Запуск кампаний
- Отправка писем
- Сбор данных о возвратах (bounces)
На практике это означает вызов консольных команд Mautic с различными интервалами. Пересборку сегментов можно запускать раз в час. Триггеры кампаний и обработка очереди писем обычно требуют более частого запуска — каждые пять-пятнадцать минут, в зависимости от объема. Сбор данных о возвратах через IMAP должен выполняться достаточно регулярно, чтобы ваша репутация отправителя не пострадала из-за необработанных жалоб на спам. Следите за syslog или выводом cron, чтобы убедиться, что задачи завершаются без ошибок памяти.
Использование платформы
Как только установка завершится и cron заработает в штатном режиме, войдите в панель управления. Интерфейс строится вокруг трех основных элементов: контактов, сегментов и кампаний.
Используйте конструктор кампаний с функцией drag-and-drop для создания сценариев рассылок. Новый подписчик попадает в поток, ждет день, получает приветственное сообщение и далее путь разветвляется в зависимости от того, кликнул ли он по ссылке. Тем временем система баллов (Points system) незаметно начисляет очки лидам, когда те посещают страницы с ценами или открывают анонсы продуктов. Вы сами определяете пороги, которые сигнализируют о «горячем» лиде, заслуживающем звонка менеджера по продажам.
Сегменты автоматически группируют контакты по заданным вами правилам. Вы можете сегментировать всех, кто открывал кампанию за последние тридцать дней, или выделить контакты из определенной страны. Формы на ваших лендингах напрямую пополняют эти сегменты. Соедините эти элементы воедино, и вы получите автоматизированную цепочку прогрева, которая реагирует на поведение пользователей, а не просто рассылает одно и то же сообщение по всей базе.
Настоящая работа после развертывания
Развертывание Mautic на Ubuntu 24.04 — это только начало. Делайте резервные копии базы данных и директории /var/www/html/mautic перед каждым обновлением. Следите за логами ошибок PHP при установке новых плагинов. Проверяйте вывод cron при масштабировании списка контактов, так как задача, которая выполняется за секунды при одной тысяче контактов, может завершиться по таймауту при пятидесяти тысячах.
Self-hosting — это обмен удобства управляемого SaaS на полный контроль над вашими маркетинговыми данными. Здесь нет привязки к вендору, нет неприятных сюрпризов с ценой за каждый контакт и нет третьих лиц, удерживающих вашу аналитику в заложниках. Вы владеете сервером, базой данных и отношениями со своей аудиторией. Для команд, готовых обслуживать Linux-сервер и несколько выражений cron, такой обмен обычно того стоит.
