MATOMO 3.8.0版本

新特性 在此版本,我们重点聚焦在提高matomo的安全性。比如说,如果特定IP的用户多次登录失败,此IP将会被屏蔽。这样可以避免机器人或者其他自动工具破坏性地猜密码。同时,你还可以启用双因子鉴权功能,让账户更安全。在修改密码或者email地址的时候,任何用户都会被要求输入旧密码。我们还解决了一些XSS问题。感谢缺陷奖励计划中安全员不断提交问题。 我们还做优化了可用性。之前,Evolution报表无法选择特定时间范围展示。在此版本之后,您就可以点击报表下面的“Change Periods”小图标,来选择需要展示数据的时间范围。 同时,在每个表格类报表下面,你可以看到一个按钮“Show Totals Row”。点击它,就会出现一个新行,标题为”Totals”,它用来显示每列的汇总值。当你在分析数据并想知道每个指标的汇总值时,这个特性是非常有用的。 在之前的版本,Transitions报表是非常不容易被浏览到的。在此版本,你可以直接在Behavior > Transitions菜单中进行浏览。 我们还把Campaign追踪连接生成器加入到了版本中,菜单路径是Matomo > Acquisition > Campaign URL Builder。这样你就无需额外打开我们的官网进行活动链接生成了。 具有“Admin”权限的用户可以将仪表盘共享给其他用户(之前是只有超级用户才可以)。 在此版本我们还增加了诊断功能,此功能只能被超级用户使用,菜单路径是Matomo > Administration > Diagnostics > Tracking Failures。此功能可以列举出2天内的追踪错误。值得注意的是此功能只能记录一些一般性的问题,比如说站点ID不存在等。 对于javascript方式的追踪,目前piwik.js和piwik.php依然可用。我们也引入了matomo.js和matomo.php,它们在以后的版本会被默认使用。如果你正在追踪移动应用,我们已经发布了iOS和安卓SDK新版本。 更多手机、平板和其它设备、浏览器可以被识别,新的搜索引擎和社交网络被添加。 标签管理器(Tag Manager)进一步得到优化,也修改了一些缺陷。 安全发布 此版本很关键 一些XSS问题被上报并得以解决。我们的安全缺陷奖励计划(公布在Hackerone)欢迎并奖励研究者发现并上报任何关于Matomo或官方插件问题。 数据库更新 此版本不包含任何主要的数据库更新。 平台变更 Matomo是一款开源的分析平台。为了能够让Matomo的开发者了解到更多关于核心API的优化和变更,我们从上一个版本就以文字的形式记录了这些变更。 在3.8.0版本有一些突破性的API变更、新API、新特性、内部更新和功能舍弃。请详细阅读面向开发者的平台变更这篇文章,其中记录了所有关于平台和API的变更。 备注:Matomo市场已经有83个插件已经兼容Matomo3,这仅仅是一个开始。未来,maotmo会成为你的统一数据分析平台。 新的或更新的SDK(追踪接口客户端) Matomo团队提供官方SDK用于分析移动应用和其他种类的APP。苹果系统iOS和安卓系统版本如下: iOS SDK: new release 6.0.0 [by @brototyp] Android SDK: new release 4.0.2 [by @d4rken]

Nginx的location指令怎么用?

Syntax: location [ = | ~ | ~* | ^~ ] uri { … } location @name { … } Default: — Context: server, location 根据请求的URL设置处理逻辑 匹配工作会在解码%XX形式的参数后进行,同时也会将“.” 和 “..”依据网址进行转换,同时也会将两个甚至多个斜杠压缩成一个斜杠。 一个location定义可以基于前缀字符串(prefix string), 或者正则表达式(regular expression). 正则表达式又分为两种:“~*”不区分大小写,“~”区分大小写。为了找到最终的location定义,需要遵循以下逻辑:nginx首先检查以前缀字符串方式定义的location, 如果请求的网址被多个前缀字符串匹配,则最长的那个会被选择并记住。接下来正则表达式定义会被检查,检查顺序按照配置的先后顺序。正则表达式的检查,只要找到一个匹配就立刻中止,对应的配置会被使用。如果正则表达式定义没有符合要求的,则使用之前记住的最长的前缀字符串式定义。 Location配置块可以嵌套定义。上述规则的例外情况请见下文: 如果最长的前缀式匹配带有“^~”修饰符,则不会检查正则表达式定义。 使用”=”修饰符来定义完全匹配,如果找到了完全匹配的location定义则规则搜索终止。 比如,请求”/”经常发生,定义“location = /”可以加速此类请求的处理速度,因为找到此规则即可终止搜索。 在nginx0.7.1版本到0.8.41版本,即使前缀location没有”=”或“^~”修饰符,也会直接终止,同时不会检查正则式定义。

Matomo数据模型系列文章之(五)报表

归档数据就是归档过程中产生的数据,它被以记录的形式存储在数据库中。这些记录随后会被加载并转化成报表,最后呈现在用户面前。 从记录到报表 在之前的文章中说到记录与报表时是所区别的。记录被结构化、被优化,存储在数据库中。它对人类和其他软件来说是不可读的。 API方法不能简单读取这些归档数据并直接返回。它们必须被格式化以便呈现在报表中。 DataTable过滤器 报表会被存储在DataTable类对象中,这些对象可以以下形式进行操作: 遍历每一行并手工修改 使用DataTable过滤器 DataTable过滤器操作DataTable实例的方法是一致的。Piwik已经预定义了一些过滤器,这样你可以直接使用它们而无需为通常的操作写很多代码了。 有时候为了存储效率,需要对报表对应的记录进行一定程度改变。而呈现报表则需要将改变后的记录重新恢复。比如说,代表列的整型ID恢复成字符串类型,通过ReplaceColumnName过滤器即可完成。 $dataTable->filter(‘ReplaceColumnNames’); 暴露报表 报表由插件中定义的API类生成。这些类加载归档记录,将它们转换成可以呈现的报表,然后通过报表API提供服务。 报表API可以通过HTTP请求进行调用或直接通过PHP代码(如在控制器Controller方法中) 调用。 学习更多 阅读报表API 关于报表如何呈现的内容,请阅读可视化报表数据