如何更改 MySQL 数据库中的 Piwik 访问 URL?

Posted

技术标签:

【中文标题】如何更改 MySQL 数据库中的 Piwik 访问 URL?【英文标题】:How to change Piwik visit urls in MySQL database? 【发布时间】:2019-04-01 02:04:33 【问题描述】:

我有这个问题,我之前的帖子有很多来自 facebook 的访问,他们开始向他们的出站 url 添加查询字符串(例如?fbclid=IwAR26j_D60TXYnGASbu27ABBdZduNInguL4mp_nK7eqxm6UklZEpWt8jkZM4),所以在我的统计数据中,来自 Facebook 的每次访问都是唯一的 url(其中一些有不止一次访问,所以也许它们是共享的)。我为未来的访问者添加了重定向:

RewriteCond %QUERY_STRING fbclid=.+
RewriteRule (.*) /$1?fbclid= [R=302,L]

但我也想更改 Piwik 数据库中的网址(只有最后一篇帖子),但我很难找到网址的保存位置,我已经从隐身模式访问了帖子(因为我将 cookie 设置为不跟踪我的访问)所以我有一个没有价值的网址。

Piwik 有支持,但它是为企业付费订阅(我有免费版本),他们也有 GitHub 问题,但那些是针对错误的,所以除了 *** 之外我不知道在哪里问这个。

我试过这个:

mysql> select * from piwik_log_action where name = 'jcubic.pl/2018/10/pytania-rekrutacyjne-css.html?fbclid='
# this is post after redirect
+----------+----------------------------------------------------------+------------+------+------------+
| idaction | name                                                     | hash       | type | url_prefix |
+----------+----------------------------------------------------------+------------+------+------------+
| 2246     | jcubic.pl/2018/10/pytania-rekrutacyjne-css.html?fbclid= | 4170874330 | 1    | 2          |
+----------+----------------------------------------------------------+------------+------+------------+


mysql> update piwik_log_link_visit_action
   set idaction_url = 2246
   where idaction_url in (select idaction
                          from piwik_log_action
                          where name like '%pytania-rekrutacyjne-css.html?fbclid=%' and name <> 'jcubic.pl/2018/10/pytania-rekrutacyjne-css.html?fbclid=')

查询成功,所有记录的 adaction_url 都得到更新。但是当我刷新 Piwki 报告时,我仍然会得到带有 fbclid 查询字符串的页面。

是否有人了解 Piwik(重命名为 matomo 之前的旧版本 3.0.0)并知道如何更改 DB 中的 url?

【问题讨论】:

这样的问题随时可以在论坛提问:forum.matomo.org @LukasWinkler 谢谢,不知道论坛。 【参考方案1】:

我的 Piwik 安装似乎启用了删除旧日志,并且 Piwk 正在根据日志为报告创建存档。它们在自己的表中,数据为 blob,根据FAQ,如果启用了删除旧日志,则不应重新构建存档。

但以防万一,如果您没有启用此功能,我执行的查询应该会更新所有数据和数据库,然后您可以尝试按照常见问题解答重新处理日志中的存档。

这是我执行的查询:

update piwik_log_visit set visit_exit_idaction_url = 2246
where visit_exit_idaction_url in (select idaction 
                                  from piwik_log_action 
                                  where name like '%pytania-rekrutacyjne-css.html?fbclid=%' and name <> 'jcubic.pl/2018/10/pytania-rekrutacyjne-css.html?fbclid=')

update piwik_log_visit set visit_entry_idaction_url = 2246
where visit_entry_idaction_url in (select idaction 
                                   from piwik_log_action 
                                   where name like '%pytania-rekrutacyjne-css.html?fbclid=%' and name <> 'jcubic.pl/2018/10/pytania-rekrutacyjne-css.html?fbclid=')

archive.org 中还有docs for DB schema

【讨论】:

以上是关于如何更改 MySQL 数据库中的 Piwik 访问 URL?的主要内容,如果未能解决你的问题,请参考以下文章

Piwik 更改事件动作名称

piwik源码安装部署

piwik安装部署最佳实践

网站统计-Piwik

piwik,如何获取每个子域的数据?

使用 Piwik + Ruby on Rails 跟踪目标转换中的自定义变量