Page 1 of 1

ApacheServerStatus.php - Unexpected end tag : td in Entity

Posted: Thu 20. Nov 2025, 10:18
by Ralph
Ich bin sicher, dass die Ursache des Problems bei KeyHelp liegt
:?: das file ist ioncubed, ich kann es daher nicht überprüfen

Server-Betriebssystem + Version
Debian 12.12 (auch bei ARM64 Installationen)

Eingesetzte Server-Virtualisierung-Technologie
KVM

KeyHelp-Version + Build-Nummer
25.2 (Build 3483)

Problembeschreibung / Fehlermeldungen
PHP Warning: DOMDocument::loadHTML(): Unexpected end tag : td in Entity, line: 417 in /home/keyhelp/www/keyhelp/core/Webserver/Apache/ApacheServerStatus.php on line 134

Schritte zur Reproduktion
cat /var/log/keyhelp/php-error.log | grep "Unexpected end tag"

Re: ApacheServerStatus.php - Unexpected end tag : td in Entity

Posted: Thu 20. Nov 2025, 10:22
by Alexander
Hallo,

gibt mir mal die Ausgabe von

Code: Select all

curl --insecure 'https://localhost:443/server-status'

Re: ApacheServerStatus.php - Unexpected end tag : td in Entity

Posted: Thu 20. Nov 2025, 10:35
by Ralph
Ich hab hier die Zeilen 406-420 ...reicht das aus?
Ist sicherlich kein großes Problem, ist mir vorhin nur zufällig aufgefallen ...

Code: Select all

    <tr class="rows">
      <td colspan="1">search a client ip entry</td>
      <td colspan="8">
        <form action="/server-status" method="get">
          <input name="address" value="0.0.0.0" type="text">
          <input name="action" value="search" type="submit">
          </form>
      </td>
    </tr>
   <tr class="row"><td style="width:28%"></td><td style="width:9%"></td><td style="width:9%"></td><td style="width:9%"></td><td style="width:9%"></td><td style="width:9%"></td><td style="width:9%"></td><td style="width:9%"></td><td style="width:9%"></td></tr>
 </tbody></table>
 </tr></td> ### hier müsste 417 sein
</tbody></table>
<table border="1"><tbody>
 <tr><td>

Re: ApacheServerStatus.php - Unexpected end tag : td in Entity

Posted: Thu 20. Nov 2025, 10:41
by Tobi
Ralph wrote: Thu 20. Nov 2025, 10:35reicht das aus?
Nope.
Die Frage ist doch: Wo wurde der entsprechende Tag geöffnet und warum zwischendrin unterbrochen?
Diese Frage kann man nur mit dem kompletten Quellcode beantworten.

Zusätzlich bitte keine Pseudonymisierungen oder Streichungen bzw. Ersetzungen.

Grundsätzlich funktioniert die Anzeige, nur bei dir nicht. Also muss es bei dir eine Spezialität geben welche die korrekte Darstellung verhindert.

Daher den gesamten Quellcode.
Aus Datenschutzgründen auch per PN an Alex.

Re: ApacheServerStatus.php - Unexpected end tag : td in Entity

Posted: Thu 20. Nov 2025, 10:59
by Ralph
Tobi wrote: Thu 20. Nov 2025, 10:41
Ralph wrote: Thu 20. Nov 2025, 10:35reicht das aus?
Grundsätzlich funktioniert die Anzeige, nur bei dir nicht. Also muss es bei dir eine Spezialität geben welche die korrekte Darstellung verhindert.

Lieber Tobi, der Output wäre zu Umfangreich und ewig lang, enthält ca.. 200 Kunden Domains.
Kommt wohl irgendwo zu einem HTML Formatierungsfehler der ganze Output wäre hier unangebracht, aber wenn der Fehler nur bei mir auftritt fällt mir dazu noch die Apache Status Erweiterung für den Zabbix Server in der status.conf ein, ansonsten wurde da nichts geändert.

Code: Select all

<Location /server-status>
        SetHandler server-status
        Require local
        Require ip 127.0.0.1 ::1 xx.xx.xxx.xxx
</Location>


Re: ApacheServerStatus.php - Unexpected end tag : td in Entity

Posted: Thu 20. Nov 2025, 11:06
by Alexander
Tobi hat eigentlich alles auf den Punkt gebracht.
Ohne die vollständige Ausgabe zu sehen, kann ich nur raten.
Es ist auch nicht das erste mal, das der der Serverstatus von sich aus ungültiges HTML liefert, zumindest muss ich im Code zum Parsen der Ausgabe schon an anderen Stellen darauf Rücksicht nehmen.

Ob es nun 200 oder 2000 Domains sind spielt eigentlich keine Rolle für mich.

Sende es doch per PM oder als Link zu pastebin o.Ä.

Re: ApacheServerStatus.php - Unexpected end tag : td in Entity

Posted: Thu 20. Nov 2025, 11:18
by Ralph
Alexander wrote: Thu 20. Nov 2025, 11:06 Sende es doch per PM oder als Link zu pastebin o.Ä.
Danke, ich hab hier von meinem eigenen Server (gleiche Warnung) den Output genommen, ist etwas kürzer ;-)
Ich schicke es Dir per PM.
Lass Dir Zeit, ist nur eine Warnung und nicht wirklich dringend.

Ich schätze mal die Warnungr im logfile wird irgendwo im UI beim Aufruf der Apache Logs generiert ... Admin > Domains oder User > Domains.

Re: ApacheServerStatus.php - Unexpected end tag : td in Entity  [GELÖST]

Posted: Thu 20. Nov 2025, 13:11
by Alexander
Hab die Ursache gefunden.
Der Apache-Server-Status nutzt einen wilden Mix aus Zeilenumbruch Zeichen, was im folgenden dazu führt, das teilweise HTML Tags "gefressen" werden.
Sieht man auch, wenn man den curl befehl von oben verwendet.

z.B. so sollte es aussehen.

Code: Select all

<tr><td bgcolor="#000000">
<b><font color="#ffffff" face="Arial,Helvetica">SSL/TLS Session Cache Status:</font></b>
</td></tr>
<tr><td bgcolor="#ffffff">
So kommt es am Ende heraus, da "\r" benutzt wurde:

Code: Select all

<tr><td bgcolor="#000000">
</td></tr>olor="#ffffff" face="Arial,Helvetica">SSL/TLS Session Cache Status:</font></b>
<tr><td bgcolor="#ffffff">
Ich normalisiere die Umbrüche an der Stelle künftig.

-> Fix ist Teil von KH 25.3