[3.3] Sporadische php-Fehler

Fragen rund um die Installation, Administration und Benutzung von phpBB.
Forumsregeln
Bitte im Thementitel den Präfix deiner phpBB-Version angeben
Benutzeravatar
LukeWCS
Supporter
Supporter
Beiträge: 2963
Registriert: 15.12.2014 10:19
Kontaktdaten:

Re: [3.3] Sporadische php-Fehler

Beitrag von LukeWCS »

Okay, der 3.3.13 Core ist also vollständig und intakt, somit passt mein Debug Code.

Bei den 5 geänderten Dateien handelt es sich laut Hash nicht um Original-Dateien, wurden also gezielt von dir angepasst? Aber das nur am Rande.

Editiere phpbb\session.php

1. Suche:

Code: Alles auswählen

class session
{
Füge darunter ein:

Code: Alles auswählen

	function debug_log(&$data, $label)
	{
		if (!file_exists('debug_log.txt'))
		{
			file_put_contents('debug_log.txt', '');
		}

		$variable_type = gettype($data);
		if ($variable_type != 'array')
		{
			$debug_date = new \DateTimeImmutable();
			$debug_date = $debug_date->setTimezone(new \DateTimeZone('Europe/Berlin'));
			file_put_contents('debug_log.txt', $debug_date->format('Y-m-d H:i:s') . ' - ' . $label . ' - ' . $variable_type . "\n", FILE_APPEND);
		}
	}
2. Suche:

Code: Alles auswählen

// Did the session exist in the DB?
Füge darüber ein:

Code: Alles auswählen

$this->debug_log($this->data, 'session_begin');
3. Suche:

Code: Alles auswählen

if ($this->data['user_id'] != ANONYMOUS && !$bot)
Füge darüber ein:

Code: Alles auswählen

$this->debug_log($this->data, 'session_create');
Jetzt einfach mal Forum aufrufen, dann bitte prüfen ob du im Root von phpBB die Datei debug_log.txt finden kannst. Wenn ja, ist alles korrekt eingerichtet und der Debug Code "überwacht" jetzt das spezielle Problem bei dir und loggt dann auch beim Auftreten Infos in diese Datei, die ich später brauche.

Das ist noch kein Workaround, weil ich erst noch weitere Infos brauche. Ausserdem habe ich eine neue Vermutung, deshalb dieser Debug Code: du solltest dein Forum jetzt zum Testen mit PHP 7 betreiben, nicht mit PHP 8. Sobald das Problem mindestens einmal aufgetreten ist, mal das Log sichten, da müsste dann etwas geloggt sein.

edit: Achso halt, wenn du mit PHP 7 fährst, kriegst ja keine Meldungen. :wink: Also einfach mal gelegentlich schauen, ob sich in der Log Datei was tut. Denn meine Vermutung hat damit zu tun, dass das rein gar nichts mit der PHP Version zu tun.
Möge das Backup mit dir sein. Immer.
Kein Support via PN! Siehe den Punkt "Private Nachrichten" im phpBB.de-Knigge.
Erweiterungen - Infos zur artgerechten Haltung / phpBB Ext Check - Analyse von Erweiterungen bezüglich Vorgaben und Kompatibilität
guenniguenzelsen
Mitglied
Beiträge: 173
Registriert: 30.11.2021 13:53

Re: [3.3] Sporadische php-Fehler

Beitrag von guenniguenzelsen »

Die Datei session.php ist modifiziert.
Auf PHP 7.4 ist umgestellt.
Im ACP habe ich Cache leeren ausgeführt.

Die Datei debug-log.txt ist angelegt worden.
Der Inhalt direkt nach der Anlage:

Code: Alles auswählen

2024-11-17 17:16:59 - session_begin - boolean
Update: Nach etwas über einer Stunde

Code: Alles auswählen

2024-11-17 17:16:59 - session_begin - boolean
2024-11-17 17:19:07 - session_begin - boolean
2024-11-17 17:29:31 - session_begin - boolean
2024-11-17 17:29:31 - session_begin - boolean
2024-11-17 17:32:35 - session_begin - boolean
2024-11-17 17:47:59 - session_begin - boolean
2024-11-17 17:53:53 - session_begin - boolean
2024-11-17 18:09:38 - session_begin - boolean
2024-11-17 18:15:39 - session_begin - boolean
2024-11-17 18:20:28 - session_create - boolean
2024-11-17 18:22:52 - session_begin - boolean
Benutzeravatar
LukeWCS
Supporter
Supporter
Beiträge: 2963
Registriert: 15.12.2014 10:19
Kontaktdaten:

Re: [3.3] Sporadische php-Fehler

Beitrag von LukeWCS »

Okay, da tut sich ja schon mal was. Die Einträge mit session_begin sind quasi Kontrollpunkte, das sind noch keine Fehler, sondern eine Art Marker. Relevant sind die Einträge mit session_create, das sind die tatsächlichen Fehler.

Dann haben wir jetzt schon mal 1 Positiv im Log. Jetzt auf PHP 8 umstellen und dann gehts darum, den Zeitpunkt der Fehlermeldungen die dann wieder angezeigt werden wenn das Problem auftritt, mit dem Debug Log zu vergleichen. Zum übereinstimmenden Zeitpunkt sollte dann jeweils auch ein session_create im Log vorhanden sein. Da mal 2-3 solcher Situationen abwarten, dann sehen wir weiter.
Möge das Backup mit dir sein. Immer.
Kein Support via PN! Siehe den Punkt "Private Nachrichten" im phpBB.de-Knigge.
Erweiterungen - Infos zur artgerechten Haltung / phpBB Ext Check - Analyse von Erweiterungen bezüglich Vorgaben und Kompatibilität
guenniguenzelsen
Mitglied
Beiträge: 173
Registriert: 30.11.2021 13:53

Re: [3.3] Sporadische php-Fehler

Beitrag von guenniguenzelsen »

Ich habe vor etwa einer Stunde auf PHP 8 umgestellt.
Jetzt findet sich ein session_create, das mit dem PHP-Fehler zeitlich korrespondiert.

Code: Alles auswählen

2024-11-17 20:11:50 - session_begin - boolean
2024-11-17 20:14:23 - session_begin - boolean
2024-11-17 20:18:15 - session_create - boolean
2024-11-17 20:18:15 - session_create - boolean

Code: Alles auswählen

[Sun Nov 17 20:18:15 2024] [error] [client 40.77.167.136:0] AH01071: Got error 'PHP message: PHP Warning:  Undefined array key "user_type" in /kunden/(...)
Benutzeravatar
LukeWCS
Supporter
Supporter
Beiträge: 2963
Registriert: 15.12.2014 10:19
Kontaktdaten:

Re: [3.3] Sporadische php-Fehler

Beitrag von LukeWCS »

Jupp, das würde zusammenpassen.

Diese IP ist einem Bot zugeordnet, MSN, also Microsoft.

Ich habe darum vorhin als "Bot" versucht in deinem Forum, ob ich eventuell diese Fehler provozieren kann, ist mir aber nicht gelungen. Das wäre immens hilfreich gewesen, wenn man mal einen Weg finden würde, wie man das gezielt reproduzieren kann. Im Browser kann ich verschiedene User Agents simulieren, das dient dazu, eine Webseite auf verschiedene Endgeräte und Clients hin testen zu können.

Aber was anderes habe ich dabei entdeckt: du solltest dir mal deine Bot Gruppe genau anschauen. Als Gast darf ich nicht die Profile deiner User sehen, aber als Bot schon. ;) Ebenso kann ich auf die Team Seite zugreifen, was ich aber als Gast nicht darf.

Das ist von deiner Seite sicher nicht so gedacht gewesen, oder? Bedenke, auf alles worauf Bots zugreifen können, das findet sich früher oder später auch bei den Suchmaschinen, denn das ist ja die Aufgabe der SuFu Crawler: Daten sammeln.
Möge das Backup mit dir sein. Immer.
Kein Support via PN! Siehe den Punkt "Private Nachrichten" im phpBB.de-Knigge.
Erweiterungen - Infos zur artgerechten Haltung / phpBB Ext Check - Analyse von Erweiterungen bezüglich Vorgaben und Kompatibilität
guenniguenzelsen
Mitglied
Beiträge: 173
Registriert: 30.11.2021 13:53

Re: [3.3] Sporadische php-Fehler

Beitrag von guenniguenzelsen »

Danke für den Hinweis
Ich habe die Gruppenrechte für Bots umgehend korrigiert.
:-)

Ich habe bisher auch noch keine Möglichkeit gefunden, den Fehler gezielt zu provozieren
Benutzeravatar
LukeWCS
Supporter
Supporter
Beiträge: 2963
Registriert: 15.12.2014 10:19
Kontaktdaten:

Re: [3.3] Sporadische php-Fehler

Beitrag von LukeWCS »

guenniguenzelsen hat geschrieben: 17.11.2024 22:05 Danke für den Hinweis
Ich habe die Gruppenrechte für Bots umgehend korrigiert.
Kein Ding und kann ich bestätigen; beides ist jetzt dicht.
Ich habe bisher auch noch keine Möglichkeit gefunden, den Fehler gezielt zu provozieren
Jupp, das Problem mit so sporadischen und nicht zuverlässig reproduzierbaren Fehlern ist, dass man da leider ewig suchen kann. Wie man hier im Thema ja auch sehen kann.

Okay, jetzt zu meiner neuen Vermutung, nachdem ein paar Ergebnisse vorliegen: das Ganze hat eher nichts mit Versions-Problemen zu tun, weil die Fehler hast du genauso auch mit PHP 7, nur da siehst du sie nicht und da haben diese Fehler auch keine Sekundär-Wirkungen. Warum du das bei PHP 8 wahrnimmst, hängt schlicht damit zusammen, dass die Luft bei PHP zusehends dünner wird, die Zügel werden immer straffer gezogen. Das heisst, das was früher noch als Kleinkram durchging, wird jetzt minimal als Warnung gemeldet und maximal als Fehler abgestraft.

Aber das alleine ist es nicht, es muss noch "irgendwas" anderes an Situation eintreten, dass das auch wirklich die Auswirkung hat. Das war was ich heute ohne Erfolg probiert hatte.
Möge das Backup mit dir sein. Immer.
Kein Support via PN! Siehe den Punkt "Private Nachrichten" im phpBB.de-Knigge.
Erweiterungen - Infos zur artgerechten Haltung / phpBB Ext Check - Analyse von Erweiterungen bezüglich Vorgaben und Kompatibilität
guenniguenzelsen
Mitglied
Beiträge: 173
Registriert: 30.11.2021 13:53

Re: [3.3] Sporadische php-Fehler

Beitrag von guenniguenzelsen »

Moin Luke
zunächst an dieser Stelle nochmal ein Danke, dass Du Dich so in die Sache reinhängst.

Ich habe von 0:00 Uhr bus 9:30 Uhr in beiden Logs reichlich Einträge.
Wenn die für die Analyse hilfreich sein können, stelle ich sie gerne hier rein (überschreiten mit 75000 Zeichen die Maximalkapazität von 60000 Zeichen eines Beitrages hier/würde ich dann aufteilen).

Gruß
Thomas
Benutzeravatar
LukeWCS
Supporter
Supporter
Beiträge: 2963
Registriert: 15.12.2014 10:19
Kontaktdaten:

Re: [3.3] Sporadische php-Fehler

Beitrag von LukeWCS »

Mahlzeit
guenniguenzelsen hat geschrieben: 18.11.2024 09:29 zunächst an dieser Stelle nochmal ein Danke, dass Du Dich so in die Sache reinhängst.
Nur schade, dass wir bisher lediglich Hinweise und kleinere Details ermitteln konnten.
Ich habe von 0:00 Uhr bus 9:30 Uhr in beiden Logs reichlich Einträge.
Okay, das reicht dicke und wir können das an der Stelle beenden.

Jupp, zu gross für hier als Beitrag und ist primär nur für dich und mich interessant, daher schlage ich vor, dass du beide Logs zusammenpackst und das Archiv irgendwo auf deiner Seite/Forum platzierst und mir den Link per PN gibst. Sobald ich das habe, gebe ich dir wieder Bescheid, dann kannst es wieder löschen.

Zeitgleich dazu kannst dann die session.php wieder durch das Original ersetzen. Sollte ich den Debug Code nochmal brauchen, kann man den erneut wieder einbauen und erweitern.
Möge das Backup mit dir sein. Immer.
Kein Support via PN! Siehe den Punkt "Private Nachrichten" im phpBB.de-Knigge.
Erweiterungen - Infos zur artgerechten Haltung / phpBB Ext Check - Analyse von Erweiterungen bezüglich Vorgaben und Kompatibilität
guenniguenzelsen
Mitglied
Beiträge: 173
Registriert: 30.11.2021 13:53

Re: [3.3] Sporadische php-Fehler

Beitrag von guenniguenzelsen »

Erledigt :-)
Antworten

Zurück zu „Support-Forum“