WebsiteBaker Community Forum

WebsiteBaker Support (2.13.x) => General Help & Support => Hilfe & Support (deutsch) => Topic started by: hillschmidt on April 02, 2024, 11:27:47 AM

Title: Fehler mit croncheck.php in der Version 4 von dev4me.com
Post by: hillschmidt on April 02, 2024, 11:27:47 AM
croncheck.php in der Version 4 vom 16.01.2020 bringt folgenden Fehler:
Code: [Select]
PHP Warning:  Undefined array key "SCRIPT_NAME" in /mnt/web220/b2/93/536293/htdocs/wb/framework/CoreAutoloader.php on line 96
PHP Warning:  Undefined array key "SCRIPT_NAME" in /mnt/web220/b2/93/536293/htdocs/wb/framework/CoreAutoloader.php on line 141
There was an uncatched exception<br />
strtolower(): Argument #1 ($string) must be of type string, null given<br />
in line (60) of (/framework/HttpRequester.php):<br />

Hat da jemand eine Idee?

PHP 8.1 und WB 2.13.5 r220
Title: Re: Fehler mit croncheck.php in der Version 4 von dev4me.com
Post by: hgs on April 02, 2024, 01:08:48 PM
Ich hänge mal meine croncheck.php als .zip hier an, die macht was sie soll.
Nur umbenennen, ist nicht gezipt!
Code: [Select]
Etwas hat sich auf https://domäne.tld geändert
Diese Dateien sind geändert: /var/log/php-error.log.php -> 2.4.2024 13:03
Das Skript lief für 0,311273097992 Sekunden
Habe dann aber folgenden Meldung im ErrorLog
Code: [Select]
Tue, 02 Apr 2024 11:10:23 +0000 [E_NOTICE] /croncheck.php:[133]  from /croncheck.php:[133] md5_file "md5_file(): Read of 8192 bytes failed with errno=21 Is a directory"Die Domäne läuft mit php8.3 und mit dem Patch r223
Nachtrag
Die zn 133 deaktivieren und der ErrorLog bleibt leer
Code: [Select]
                        //if($checkmd5) $md = md5_file($cf);
Title: Re: Fehler mit croncheck.php in der Version 4 von dev4me.com
Post by: hillschmidt on April 03, 2024, 09:22:05 AM
Leider bleibt der Fehler:

Code: [Select]
PHP Warning:  Undefined array key "SCRIPT_NAME" in /mnt/web220/b2/93/536293/htdocs/wb/framework/CoreAutoloader.php on line 96
PHP Warning:  Undefined array key "SCRIPT_NAME" in /mnt/web220/b2/93/536293/htdocs/wb/framework/CoreAutoloader.php on line 141
There was an uncatched exception<br />
strtolower(): Argument #1 ($string) must be of type string, null given<br />
in line (60) of (/framework/HttpRequester.php):<br />
Title: Re: Fehler mit croncheck.php in der Version 4 von dev4me.com
Post by: sternchen8875 on April 03, 2024, 09:55:59 AM

deutsch von PHP.net
$_SERVER ist ein Array, das Informationen wie Header, Pfade und die verschiedenen Wege, das Skript anzusprechen beinhaltet. Die Einträge in diesem Array werden vom Webserver erstellt, weshalb es keine Garantie dafür gibt, dass jeder Webserver alle diese Einträge unterstützt - Server können einige weglassen oder andere Einträge unterstützen, die hier nicht aufgeführt sind. Die meisten dieser Variablen werden jedoch in der » CGI/1.1-Spezifikation ausgewiesen und sind wahrscheinlich definiert.


engl. PHP.net
$_SERVER is an array containing information such as headers, paths, and script locations. The entries in this array are created by the web server. There is no guarantee that every web server will provide any of these; servers may omit some, or provide others not listed here.

------------------------------------

Es ist also kein Fehler in der Datei und auch nix verkehrtes, sondern nur so, das der Server diese Information nicht zur Verfügung stellt. Leicht zu kontrollieren durch solch Code in einer versteckten Code- bzw Code²-Section

Code: [Select]
            echo "<pre>";
            print_r($_SERVER);
            echo "</pre>";

Ergebnis ist eine lange Liste mit allen Array-Teilen, die der jeweilige Server zur Verfügung stellt. $_SERVER['SCRIPT_NAME'] sollte dann nicht Teil dieses Array's sein
Hatte ich auch mal eine Zeit lang, ich meine, das war bei Strato.


Nachtrag
Die zn 133 deaktivieren und der ErrorLog bleibt leer
Code: [Select]
//if($checkmd5) $md = md5_file($cf);

es ist ausreichend, den Check per md5 oben in den Dateieinstellungen der croncheck.php zu deaktivieren

$checkmd5 = true;   // check aktiv
vs.
$checkmd5 = false;  // check inaktiv
Title: Re: Fehler mit croncheck.php in der Version 4 von dev4me.com
Post by: hgs on April 03, 2024, 10:01:26 AM
Danke,  (Y) wie immer sehr lehrreich,
dann werde ich es mal wieder korrigieren.
Title: Re: Fehler mit croncheck.php in der Version 4 von dev4me.com
Post by: hillschmidt on April 04, 2024, 08:48:40 AM
Danke schon mal. Ich habe jetzt das kleine Script generiert - und siehe da: die Variable SCRIPT_NAME wird für dieses Script vom Server hergegeben:
Code: [Select]
[SCRIPT_NAME] => /wb/check_vars.php
An CoreAutoloader und HttpRequester im frameweork traue ich mich nicht ran ... beide Version 0.0.1 - mache ich da was bei den Updates falsch? Denn dort kommen ja die Meldungen her, die ich weiterhin habe ...
Title: Re: Fehler mit croncheck.php in der Version 4 von dev4me.com
Post by: sternchen8875 on April 04, 2024, 11:15:44 AM
zu den Fehlermeldungen: ich kann nur "übersetzen", was dort steht

und da ist einmal SCRIPT_NAME leer (Zeile 1 + 2 der Fehlermeldungen) und in den letzten die REQUEST_METHOD (ist leer - null given)

Für mehr fehlt mir leider das Wissen. Aber ganz allgemein... die croncheck.php läuft ja schon seit einigen Jahren  in dieser Form fehlerfrei und CoreAutoloader und HttpRequester sind ja in ihrer Form auch schon ein paar Jahre dabei, darum tippe ich aus der Ferne eher auf etwas Spezifisches, das nur bei dir Probleme macht.

Vielleicht können unsere Entwickler mal aufklären
Title: Re: Fehler mit croncheck.php in der Version 4 von dev4me.com
Post by: hillschmidt on May 05, 2024, 06:17:24 PM
Nachdem ich nun zwei Fehler in der framework-Datei CoreAutoloader.php durch Ändern des Parameternamens auf SCRIPT_FILENAME eliminieren konnte ... bleibt dieser Fehler:
Code: [Select]
There was an uncatched exception<br />
strtolower(): Argument #1 ($string) must be of type string, null given<br />
in line (66) of (/framework/HttpRequester.php):<br />
Ideen?
Ich fummele eigentlich nicht in WB Basisdateien rum ... aber was soll ich sagen - in Verbindung mit dem croncheck.php läuft unter PHP 8.2 irgendwas nicht rund ... ratlos.