Diverse Fehlermeldungen bei Aufruf der matamo Startseite

Hallo zusammen,

ich habe diverse Fehlermeldungen beim Aufruf, daher anbei ein Screenshot.
Wenn mir jemand helfen könnte, wäre das super :slight_smile:

Hallo,

Welche Matomo Version verwendest du?

Es sieht so aus, als wäre die Matomo version, die du verwendest, recht alt und würde die neuere PHP version, die du verwendest, noch nicht unterstützen.

Hm…das weiß ich nicht genau…wie bekomme ich das denn raus, ohne Login -Möglichkeit?
Bin kein Entwickler, habe nur die WP Seite aufgesetzt und Matamo installiert…

Hallo,

Die Matomo-Version steht in matomo/core/Version.php

const VERSION = '4.1.1-b1';

oder ähnliches.

Die PHP-Version kann dir der Betreiber des Servers sagen (oder wenn es nicht dein Server ist, gibt es vielleicht auf der Account-Seite eine Möglichkeit sie umzustellen.

ok…es ist due Version 3.13
PHP Version ist 7.4

Nur wie soll ich ein Update vornehmen, wenn ich mich nicht mehr einloggen kann?

Hallo,

Tatsächlich: Der Fix, der Matomo kompatibel mit PHP 7.4 macht ist in 3.13.1 enthalten.

Somit hast du drei Möglichkeiten das Problem zu beheben (in aufsteigender Reihung nach Aufwand).

ältere PHP Version

Du könntest einfach statt PHP 7.4 eine ältere Version verwenden (also 7.0 bis 7.3), damit problemlos Matomo aktualisieren, dann wieder auf PHP 7.4 wechseln.

Matomo kompatibel machen

Der Fix, damit dein Matomo mit PHP 7.4 läuft ist ganz simpel: https://github.com/matomo-org/matomo/pull/15204

Einfach in der libs/upgradephp/upgrade.php Datei in diesen vier Zeilen die {} durch [] ersetzen.

diff --git a/libs/upgradephp/upgrade.php b/libs/upgradephp/upgrade.php
index a945fa8ceb7..29fa9752d91 100644
--- a/libs/upgradephp/upgrade.php
+++ b/libs/upgradephp/upgrade.php
@@ -177,7 +177,7 @@ function _parse_ini_file($filename, $process_sections = false)
 			if (!preg_match('/^[a-zA-Z0-9[]/', $line)) {continue;}
 
 			// Sections
-			if ($line{0} == '[') {
+			if ($line[0] == '[') {
 				$tmp = explode(']', $line);
 				$sections[] = trim(substr($tmp[0], 1));
 				$i++;
@@ -191,15 +191,15 @@ function _parse_ini_file($filename, $process_sections = false)
 			if (strstr($value, ";")) {
 				$tmp = explode(';', $value);
 				if (count($tmp) == 2) {
-					if ((($value{0} != '"') && ($value{0} != "'")) ||
+					if ((($value[0] != '"') && ($value[0] != "'")) ||
 							preg_match('/^".*"\s*;/', $value) || preg_match('/^".*;[^"]*$/', $value) ||
 							preg_match("/^'.*'\s*;/", $value) || preg_match("/^'.*;[^']*$/", $value) ){
 						$value = $tmp[0];
 					}
 				} else {
-					if ($value{0} == '"') {
+					if ($value[0] == '"') {
 						$value = preg_replace('/^"(.*)".*/', '$1', $value);
-					} elseif ($value{0} == "'") {
+					} elseif ($value[0] == "'") {
 						$value = preg_replace("/^'(.*)'.*/", '$1', $value);
 					} else {
 						$value = $tmp[0];

Dann sollte Matomo auch mit PHP 7.4 funktionieren und du kannst problemlos updaten

manuelles Update

selbst wenn Matomo überhaupt nicht mehr funktioniert, kannst du immer noch updaten indem du alle Dateien ersetzt wie hier beschreieben: