Есть ли другой (более прямой) способ интеграции Matomo с Discourse, помимо использования плагина?
Как настроен cron у root — должно быть что-то вроде этого:
*/12 * * * * /var/www/matomo/console core:archive --url=https://<home-of-matomo>/ > /var/log/apache2/matomo-archieve
(Конечно, время и логирование — дело личных предпочтений, а пути могут отличаться)
Но печальная история в том, что это уже выходит за рамки Discourse — ваш форум отправляет данные, и Matomo их получает, но просто не показывает их вам.
В данном случае я не уверен, где находятся настройки cron.
Кроме того, так как у меня уже есть другие сайты, которые отслеживаются корректно, я предполагаю, что общая конфигурация Matomo в порядке.
Да, я тоже загляну на форум Matomo.
Спасибо за ваши комментарии!
Если оно может отслеживать всё остальное, значит проблема не в cron. Или в самом Matomo.
Что произойдёт, если отключить CSP, оставив только режим логирования?
Если я отключу CSP, результаты остаются теми же.
Те же логи, ошибок нет, данных нет.
Есть какие-то идеи по этому поводу?
Не знаю, но можно попробовать — вставьте фрагмент кода в заголовок и попробуйте. В противном случае у меня остался только один трюк: сделайте перерыв (на кофе) и дважды-трижды проверьте настройки в компоненте. Так легко не заметить очевидную ошибку, например, неправильный ID или опечатку в имени хоста.
Это действительно должно быть добавлено в основные инструкции, так как это, похоже, обязательное требование, если только вы не запускаете Matomo на том же сервере, что и Discourse, что, как мне кажется, случается крайне редко.
Кроме того, в моём случае Matomo находится на другом сервере, который обслуживается другой группой, и у меня есть для него URL вида https://subdomain.domain.com/subfolder/piwik.js. В такой ситуации мне не совсем понятно, какой шаблон домена следует использовать в параметре content_security_policy_script_src. Поэтому на данный момент я просто перечисляю несколько доменов в этой настройке построчно, что меня не очень устраивает, например:
https://subdomain.domain.com
https://subdomain.domain.com/
https://subdomain.domain.com/subfolder
https://subdomain.domain.com/subfolder/
https://subdomain.domain.com/subfolder/piwik.js
https://subdomain.domain.com/subfolder/piwik.php
…а затем появляется возможность указать порядок с помощью опции со стрелками для сортировки вверх и вниз… что, в общем-то, здорово — кто не любит варианты… но в данном случае при попытке настроить что-то для корректной работы наиболее ценными являются чёткие и лаконичные указания.
Единственное, в чём я уверен на сто процентов, так это в том, что я действительно добавил https:// перед своим URL, что, несомненно, правильно, поскольку сертификат в порядке и соединение надёжное, как вы и указали в своём сообщении, а в инструкциях по content_security_policy_script_src это также отмечено в соответствующем поле…
Есть ли кто-то, кто с полной уверенностью может сказать, какой шаблон домена мне действительно следует использовать, исходя из приведённого выше контекста? Заранее спасибо.
Когда я пытаюсь добавить URL-адрес моего хоста Matomo (https://analytics.cosmos.coop) в поле content_security_policy_script_src, я получаю следующую ошибку:
content_security_policy_script_src: Значение должно быть либо ‘unsafe-eval’, либо ‘wasm-unsafe-eval’, либо иметь вид ‘<algorithm хеширования>-<значение base64>’, где поддерживаемые алгоритмы хеширования — sha256, sha384 или sha512. Убедитесь, что ваш ввод заключён в одинарные кавычки.
Есть какие-нибудь идеи, что может быть не так?
Вы обернули URL в '?
Discourse теперь использует CSP «Strict Dynamic», поэтому добавлять отдельные URL больше не нужно (и невозможно). Подробнее здесь:
Я удалю этот раздел из первого поста здесь. Спасибо за предупреждение, @madrush
Спасибо! Теперь у меня всё работает.
Этот компонент темы работает отлично. Спасибо всем участникам!
Использует ли кто-нибудь Цели или другие расширенные функции Matomo?
Идеи для улучшения:
-
Группы пользователей (включая пользовательские группы) можно отслеживать через пользовательские переменные Matomo.
-
Разрешить отправку пользовательских событий из Discourse в Matomo. Это было бы полезно для подключения к Целям.