3.设置mautic
原文地址: Setup
为了开始使用Mautic,您需要完成一些基本任务。
请查看以下资源,以获取分步演练。
3.1 安装
原文地址: Getting Started
步骤1:安装Mautic
如果您已经从下载页面下载了zip或通过其他来源(Softaculous,Bitnami,Digital Ocean等…)安装了Mautic,那么您已经完成了第一步。如果没有,那么您将需要将Mautic软件包(一个zip文件)上传到您的服务器;解压缩文件;然后在浏览器中导航到该位置。
例如,如果您的域是 example.com 您已将文件解压缩到名为的文件夹中 mautic,然后您将浏览到 https://example.com/mautic 开始安装过程。
权限错误
如果您在尝试访问安装时看到错误,如下所示:
该问题很可能是由于文件和文件夹的权限所致。
如果您有权访问命令行,则可以运行以下命令来重置文件和文件夹权限。确保您位于已安装Mautic的目录中。
查找您的网站根目录
根据您的服务器配置,网站的默认路径通常类似于/var/www/website 或者 /var/www/website/public_html。对于Apache,这是DocumentRoot路径,对于Nginx,这是root路径。
注意:该网站也称为site,vhost,virtualhost或server block。
继续上面的示例,这意味着要在 /var/www/example.com/mautic 目录。
文件权限设置
文件的所有者可能是 www-data 在VPS / EC2 / Droplet环境中,而您的用户ID在共享主机环境中。
在共享环境中,从以下开始:
cd /var/www/example.com/mautic
chown -R $USER:www-data .
并继续下面的findandchmod命令。
在VPS / EC2 / Droplet中,您需要添加前缀sudo以更改权限和所有权。
cd /var/www/example.com/mautic
sudo chown -R www-data:www-data .
并继续sudo以下命令的前缀:
- sudo find …
- sudo chmod …
find . -type d -not -perm 755 -exec chmod 755 {} +
find . -type f -not -perm 644 -exec chmod 644 {} +
chmod -R g+w app/cache/ var/logs/ app/config/
chmod -R g+w media/files/ media/images/ translations/
启动前自检
权限正确之后,您应该会看到“启动前自检”,以确保您的服务器正在运行与Mautic兼容的软件。
关键问题将以红色显示,并且除非您解决这些问题,否则Mautic无法运行,因此除非您解决它们,否则您将无法继续进行。
咨询问题将以橙色显示。这些问题是“应解决”的,但是您可以继续安装而无需解决它们。
在下面的示例中,您可以看到建议我们使用SSL证书保护Mautic实例的安全。您可能会看到与PHP扩展相关的其他警告,这些警告对于提供某些非必要功能(例如IMAP电子邮件收件箱检查和国际化)是必不可少的-您应确定它们是否对您很重要,并进行适当的修复。
在解决问题(并在适当的情况下,重新启动PHP服务器)之后刷新此屏幕将更新列表,并在安装Mautic之前将要解决的所有剩余问题告知您。
数据库设置
在下一步中,将要求您提供Mautic将使用的数据库的详细信息。该数据库必须是具有InnoDB支持的MySQL,最低版本为5.5.3。
主机通常是localhost和端口3306,但是如果遇到问题,请与主机提供商联系。理想情况下,您已经创建了供Mautic使用的数据库,但是如果尚未创建,请确保用户具有创建新数据库的权限。
输入数据库名称,前缀(例如mau_),该名称将添加到所有已创建的表之前,并为有权访问数据库的用户提供用户名和密码。
备份现有表的选项仅适用于在同一数据库中安装多个Mautic实例的情况;在这种情况下,您可能希望使用备份表前缀bak来备份使用相同前缀存在的任何表。这将使用相同的mau前缀重命名找到的所有现有表,以便它们将变为bak mau。可以安全地启用此功能,以防万一已有表存在!
创建并填充数据库后,此步骤可能需要几分钟才能完成。
管理员用户
创建数据库之后的下一步是设置您的管理员帐户。这将是您首次登录Mautic的帐户。
输入用户名,密码,名字和姓氏以及电子邮件地址,将为您创建该帐户。
电子邮件设定
下一步允许您配置从Mautic实例发送电子邮件的方式。
如果要进行测试(无论是在本地还是在实时服务器上),强烈建议您使用Mailhog或类似工具捕获所有传出的电子邮件,直到准备好发送给实际收件人为止。否则,在生产环境中,您将需要选择是立即发送电子邮件,还是将电子邮件排队(在Cron作业运行时进行处理),并提供适当的服务器,端口,加密类型,凭据和身份验证模式您希望使用的系统。
管理员登录
现在,您已经完成了设置过程,将转到以下位置的后端登录屏幕: http(s)😕/example.com/mautic/s/login -这是您登录Mautic来管理实例的位置,因此值得在登录页面中添加书签以备将来参考。
第2步:添加定时任务
一旦安装了Mautic,您将需要创建一些标准的定时任务,以使您的软件处理各种任务。这些定时任务可以通过cPanel创建,也可以通过命令行添加。这是您需要创建的定时任务的列表。(请注意:“ / path / to / mautic …”将反映您的Mautic版本的安装目录,您可能需要用服务器上PHP的路径替换“ php”。请咨询托管服务提供商是否您不确定。)
更新用户分组信息
php /path/to/mautic/bin/console mautic:segments:update
更新广告活动
php /path/to/mautic/bin/console mautic:campaigns:update
执行广告活动动作
php /path/to/mautic/bin/console mautic:campaigns:trigger
查看有关定时任务的页面,以获取有关这些和其他可选定时任务的更多信息。
步骤3:下载IP查找服务数据库
默认情况下,Mautic配置为使用MaxMind的免费GeoLite2 IP查找数据库。由于数据库的许可,它不能包含在Mautic的安装包中,因此必须下载。单击Mautic右上角的齿轮以查看管理菜单,然后单击配置。这是大多数配置的地方。
在“系统设置”选项卡上,向下滚动以找到IP查找服务选项,然后单击“获取IP查找数据存储”。
如果愿意,您还可以选择其他受支持的IP查找服务。
步骤4:安装追踪Javascript
在安装和设置了定时任务之后,您就可以开始跟踪联系人了。您需要为要通过Mautic跟踪的每个站点的网站添加一个简单的javascript。这是一个非常简单的过程,您可以将此跟踪脚本添加到您的网站模板文件中,或为更常见的CMS平台安装Mautic集成。这是一个跟踪javascript的示例,您可以通过单击“跟踪设置”来访问它:
<script>
(function(w,d,t,u,n,a,m){w['MauticTrackingObject']=n;
w[n]=w[n]||function(){(w[n].q=w[n].q||[]).push(arguments)},a=d.createElement(t),
m=d.getElementsByTagName(t)[0];a.async=1;a.src=u;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://example.com/mautic/mtc.js','mt');
mt('send', 'pageview');
</script>
您将需要在上述脚本中更改网站URL(将example.com/mautic替换为Mautic实例的URL)。
通过联系人监控 Contact Monitoring以获取更多详细信息。
3.2 手动更新任务
原文地址: Updating at command line
当更新Mautic时,根据您的Mautic实例的大小,有些任务可能需要很长时间才能完成。
如果潜在客户很多,则使用Mautic中的通知“钟”图标进行更新时可能会遇到问题。这些问题通常表现为更新过程中途挂起或因错误崩溃,并且通常是资源限制的结果,尤其是在共享主机环境中。如果您遇到了这种情况,请转到“更新失败”页面,以逐步了解如何完成更新。
因此,作为最佳实践,建议您在命令行上执行任何更新-并且首先在开发环境中对更新进行全面测试。
在开始这些步骤之前,请确保已对Mautic实例进行了测试备份。这意味着您已经下载了Mautic实例的文件和数据库,并且已经在某个地方的测试环境中重新创建了它们,并测试了一切正常。
查询更新
通过命令行登录,并使用以下命令将目录更改为Mautic的安装位置。
cd /your/mautic/directory
第一步是使用以下命令找出是否有可用的更新:
php bin/console mautic:update:find
该命令的输出将告诉您是否有任何更新要应用。如果存在,请运行以下命令以应用它们:
php bin/console mautic:update:apply
遇到问题时寻求帮助
如果您陷入困境并需要帮助,可以在几个地方寻求帮助。请记住,大多数使用社区论坛,Slack和Github的人都是志愿者。
如果您认为您的配置引起了问题,请在Mautic社区论坛上提问。发布前先搜索,因为过去可能有人已经回答了您的问题。
在所有情况下,描述问题以及详细解决问题所遵循的所有步骤非常重要。至少包括以下内容:
- 重现问题的步骤-到目前为止的逐步操作
- 您的服务器的PHP版本
- 您使用的Mautic版本以及您打算更新到的版本
- 您看到的错误消息-如果您没有直接看到该错误消息,请在app / logs文件夹和服务器日志中进行搜索。根据您的设置,可以在不同位置找到服务器日志。Ubuntu服务器通常在/var/log/apache2/error.log中有日志。有时,您的托管服务提供商可能会提供GUI来查看“控制面板”中的日志。
如果您没有至少提供上述信息,则可能会尝试帮助您的人将要求您提供此信息,因此请为他们省去麻烦,并提前提供信息。另外,重要的是,请保持礼貌。Mautic是一个开源项目,人们正在给予他们的空闲时间来帮助您。
如果您确定已发现错误,并且想将其报告给开发人员,则可以在Github上进行操作。
3.3 定时任务
原文地址: Cron jobs
Mautic 3为定时任务引入了新途径 bin/console -如果您使用的是旧版Mautic 2.x系列,则应将其替换为较旧的版本, app/console
Mautic需要执行一些cron定时任务来处理一些维护任务,例如更新联系人或活动,执行活动,发送电子邮件等等。您必须手动将所需的cron定时任务添加到服务器。大多数Web主机提供了一种通过SSH,cPanel或其他自定义面板添加cron定时任务的方法。如果不确定如何设置定时任务,请查阅主机的文档/支持。
如果您不熟悉Linux或Cron 定时任务,那么Apache Foundation会提供出色的指南,建议您先阅读本指南,然后再通过各种支持渠道提问。
设置cron定时任务时,必须选择希望cron定时任务运行的频率。许多共享主机希望您每15或30分钟运行一次脚本,甚至可以覆盖计划的时间来满足这些限制。如果他们有这样的限制,请查阅您主机的文档。
强烈建议您错开以下必需的作业,以免在同一分钟内运行。
例如:
- 0,15,30,45 <-mautic:segments:update
- 5,20,35,50 <-mautic:广告系列:更新
- 10,25,40,55 <-mautic:campaigns:trigger
必须要设置的定时任务
Mautic需要一些强制性的cron定时任务才能定期运行。它们列出如下:
分组任务 Segments
要将细分保持最新状态:
php /path/to/mautic/bin/console mautic:segments:update
默认情况下,该脚本将分300个批次处理联系人。如果服务器资源过多,请使用选项 –batch-limit=X 用处理每个批次的联系人数量替换X。
您还可以使用以下命令限制每个脚本执行要处理的联系人数量 --max-contacts 进一步限制使用的资源。
广告活动 Campaigns
要使用适当的联系人更新广告系列,请执行以下操作:
php /path/to/mautic/bin/console mautic:campaigns:update
默认情况下,该脚本将分300个批次处理联系人。如果服务器资源过多,请使用选项 –batch-limit=X 用处理每个批次的联系人数量替换X。
您还可以使用以下命令限制每个脚本执行要处理的联系人数量 --max-contacts 进一步限制使用的资源。
要执行广告活动,请执行以下操作:
php /path/to/mautic/bin/console mautic:campaigns:trigger
默认情况下,该脚本将按100个批处理事件。如果对于您的服务器资源而言太多,请使用该选项 batch-limit=X 将X替换为处理每个批次的事件数。
您还可以使用以下命令限制每个脚本执行要处理的联系人数量 –max-events 进一步限制使用的资源。
要发送频率规则重新安排的营销活动消息:如果将频率规则设置为系统范围或每个联系人,则标记为“营销消息”的消息(例如,作为营销活动一部分发送的电子邮件)将被插入到消息队列中。要处理此队列并重新安排发送这些消息的时间,应将此cron作业添加到您的作业列表中:
mautic:messages:send
注意,只有在系统范围内或每个联系人应用频率规则时,这些消息才会添加到队列中。
可选的定时任务
根据您的服务器配置,您可以设置其他cron作业,这些作业是可选的,但可以用于诸如发送电子邮件,导入联系人等任务。可选的cron作业如下所示:
处理邮件队列
如果将系统配置为将发送到文件系统的电子邮件排队,则需要cron作业来处理它们。
php /path/to/mautic/bin/console mautic:emails:send
提取和处理受监控的电子邮件
如果您使用的是“退回管理”,请设置以下命令来获取和处理消息:
php /path/to/mautic/bin/console mautic:email:fetch
社会监控 Social Monitoring
如果使用的是Social Monitoring,则将以下命令添加到您的cron配置中:
php /path/to/mautic/bin/console mautic:social:monitoring
导入联系人
要在后台导入大量联系人,请使用以下命令:
php /path/to/mautic/bin/console mautic:import
该命令执行所需的时间取决于CSV文件中的联系人数量。但是,成功完成导入操作后,Mautic仪表板上将显示一条通知。
Webhooks
如果将Mautic配置为分批发送Webhook,请使用以下命令发送有效载荷:
php /path/to/mautic/bin/console mautic:webhooks:process
更新MaxMind GeoLite2 IP数据库
Mautic默认使用MaxMind的GeoLite2 IP数据库。该数据库已根据知识共享署名-相同方式共享3.0的未迁移许可证进行了许可,因此不能与Mautic打包在一起。可以通过Mautic的配置手动下载数据库,也可以将以下脚本用作cron作业来自动下载更新。(MaxMind在每月的第一个星期二更新其数据库)。
php /path/to/mautic/bin/console mautic:iplookup:download
清理旧数据
通过清除旧数据来清理Mautic安装。请注意,并非所有数据都可以清除。当前支持审核日志条目,访问者(匿名联系人)和访问者页面匹配。使用–dry-run 在进行任何更改之前查看要清除的记录数。
使用’–gdpr’标志删除数据以符合GDPR欧洲法规。这将删除已停用三年的潜在客户。
这将永久删除数据!确保保留数据库备份。
php /path/to/mautic/bin/console mautic:maintenance:cleanup --days-old=365 --dry-run
MaxMind CCPA合规性
MaxMind要求用户保持“不出售”列表的最新状态,并从MaxMind中删除过去添加的与那些IP地址相关的所有数据。
在MaxMind官方网站上查看更多详细信息:[https://blog.maxmind.com/tag/ccpa/][maxmind-ccpa]
建议每周运行一次这两个命令,一次又一次。
php /path/to/mautic/bin/console mautic:donotsell:download
此命令将从MaxMind下载“免费IP地址”数据库。
php /path/to/mautic/bin/console mautic:max-mind:purge
该命令将在数据库中查找从MaxMind的“不出售IP地址”加载的数据并删除该数据。
发送预定广播(例如段电子邮件)
从Mautic 2.2.0开始,现在可以使用cron发送计划的广播以进行频道通信。目前,此方法仅适用于段电子邮件。无需手动发送并在ajax批量发送时等待浏览器窗口打开,现在可以使用命令。需要注意的是,电子邮件必须已发布并且必须具有已发布的最新日期-这有助于防止任何无意的电子邮件广播。就像手动/ ajax处理一样,只有尚未收到特定通信的联系人才可以将其发送给他们。此命令将在以后将消息发送到添加到源句段的联系人,因此,如果您不希望发生这种情况,请设置一个未发布的日期。
php /path/to/mautic/bin/console mautic:broadcasts:send [--id=ID] [--channel=CHANNEL]
命令参数:
-
–channel=email执行什么渠道。如果没有提供所有频道,则将发送所有频道。
-
–id=X 是要发送的电子邮件,SMS或其他实体的ID。
-
–limit=X是从数据库中提取要处理的联系人数量。默认为100。因此,如果触发此命令,X联系人将收到他们的电子邮件。下次运行该联系人时,它将是下一个X联系人,依此类推。
-
–batch=X是一次发送多少电子邮件。对于每个提供商,这可能会有所不同。例如,Mautic具有到Sparkpost的API连接。这样的API每1个调用可以发送1000封电子邮件。因此,批处理应为1000,以实现最快的发送速度。不多。但是SMTP提供程序不能一次处理1000。
-
–min-contact-id 和 –max-contact-id将允许按联系人ID范围将较小的邮件发送分开。如果这些范围不会重叠,则允许并行运行多个广播命令。
定期发送报告
从Mautic 2.12.0开始,现在可以使用cron定期发送报告。
php /path/to/mautic/bin/console mautic:reports:scheduler [--report=ID]
注意:对于1.1.3之前的版本,需要附加–env=prod 到cron job命令以确保命令正确执行。
配置Mautic集成
要执行所有集成的同步并管理插件,请使用本节中的cron job命令。
要从集成中获取销售线索:
php /path/to/mautic/bin/console
mautic:integration:fetchleads
或者
php /path/to/mautic/bin/console
mautic:integration:synccontacts
要将潜在客户活动推向整合:
php /path/to/mautic/bin/console
mautic:integration:pushactivity
或者
php /path/to/mautic/bin/console
mautic:integration:pushleadactivity
这些命令适用于所有可用的插件。为避免在使用多个集成时出现性能问题,必须通过添加以下内容来指定要执行的集成的名称:–integration该命令的后缀。例如,要将Mautic与Hubspot集成,请使用以下命令:
php /path/to/mautic/bin/console
mautic:integration:fetchleads --integration=Hubspot
mautic:integration:pushactivity --integration=Hubspot
要安装,更新,启用或禁用插件:
php /path/to/mautic/bin/console
mautic:plugins:reload
注意:您可以更换 mautic:plugins:reload 和 mautic:plugins:install 或者 mautic:plugins:update。它们是具有不同别名的相同命令。
提示与故障排除
如果您的环境提供了特定于命令行的php构建,通常称为php-cli,您可能要使用它而不是php它,因为它将获得更清晰的输出。在BlueHost以及其他一些PHP主机上,该php命令可能被设置为放弃命令行参数以console,在这种情况下,您必须使用 php-cli 使Cron工作发挥作用。
为了协助解决cron问题,您可以通过添加以下内容将每个cron作业的输出通过管道传输到特定文件 >>/path/to/somefile.log 2>&1在cron工作结束时。然后,您可以查看文件的内容以查看打印的内容。如果在运行cron作业时发生错误,您将在此处看到该错误,否则该文件将为空或具有某些统计信息。文件的修改时间会通知您上次执行cron作业的时间。因此,您可以使用它来确定cron作业是否成功且按计划运行。另外,当您使用cron运行命令时,建议同时启用非交互模式和no-ansi模式。这样可以确保日志中有正确的时间戳,并且输出更具可读性。
输出示例
$ php bin/console mautic:segments:update --no-interaction --no-ansi
[2016-09-08 06:13:57] Rebuilding contacts for segment 1
[2016-09-08 06:13:57] 0 total contact(s) to be added in batches of 300
[2016-09-08 06:13:57] 0 total contact(s) to be removed in batches of 300
[2016-09-08 06:13:57] 0 contact(s) affected
如果您具有SSH访问权限,请尝试直接运行命令以查看是否生成任何错误。如果在SSH会话或上面的cron输出中没有打印任何内容,请检查服务器的日志。如果您看到类似的错误’Warning: Invalid argument supplied for foreach()’ in /vendor/symfony/console/Symfony/Component/Console/Input/ArgvInput.php:287,您要么需要使用php-cli代替php或尝试使用php -d register_argc_argv=On。
3.4 变量
原文地址: Variables
3.5 Maxmind许可证
原文地址: Maxmind license
从2.16版本开始,Mautic支持使用许可证密钥访问Maxmind IP查找服务。
从3.2版本开始,许可证密钥的格式需要为AccountID:Licensekey。帐户ID显示在许可证密钥表上方。
请按照以下步骤将您的Mautic实例配置为使用许可证密钥。
-
通过转到Maxmind注册创建一个MaxMind帐户
-
注册后,检查您的电子邮件,然后单击访问您的Maxmind帐户。
-
单击菜单右上方的“联系人”图标以登录
-
登录后,在服务下,单击菜单左侧的“我的许可证密钥”
-
然后,单击生成新的许可证密钥
-
回答“此密钥将用于GeoIP更新吗?” 否并确认
-
复制您在屏幕上看到的许可证密钥,并记下许可证密钥表上方的帐户ID
-
转到Mautic>设置>配置>系统设置>其他设置,然后将许可证密钥以AccountID:Licensekey格式输入到“ IP查找服务身份验证”字段中。帐户ID显示在许可证密钥表上方
-
单击“获取IP查找数据存储”。这会将IP查找数据库下载到您的Mautic实例。
-
设置cron作业以定期下载新副本。