PHP wird nicht in HTML-Dateien geparst

  • Hallo zusammen,

    ich habe auf meiner TS-231P mit der neuesten Firmware folgendes Problem:


    Dateien, die PHP-Code enthalten werden nur richtig geparst, wenn sie die Endung PHP haben (funktioniert z.B. bestens mit einer Datei z.B. den Aufruf von phpinfo(); enthält -> PHP-Version 7.3.7).


    Heißt die Datei .htm bzw. .html wird PHP innerhalb von <% %> bzw. <%php %> nicht geparst, sondern als Kommentar im Quelltext angezeigt.


    Erweitere ich in der 'apache.conf ' die Direktive "AddType application/x-httpd-php .php .php4 .php3 .phtml" um .htm und .html , so werden (nach Neustart des Webservers) .htm und .html-Dateien zum Download angeboten.

    Eine zusätzliche Zeile "AddHandler application/x-httpd-php .php4 .php3 .phtml .htm .html" ändert nichts an dem Verhalten. .php-dateien werden weiterhin korrekt behandelt.


    Im Internet findet man durchaus das Thema. Die dortigen Lösungsvorschläge bringen jedoch nichts oder sind wegen der etwas unterschiedlichen Implementation auf dem NAS nicht umsetzbar.


    Was kann ich tun, dass PHP-Code in .htm/.html-Dateien gekorrekt geparst werden?


    Dank vorab für Hinweise!

    Einmal editiert, zuletzt von marmue ()

  • Hallo dolbyman,


    Du wirst verstehen, dass man es zuerst mal mit dem eingebauten Webserver versucht. Oder würdest du sagen, dass alle QNAP-Apps ein solch miskonfigurierter Mist sind, dass man sie am besten gleich links liegen lässt?


    .phtml funktioniert übrigens wie es soll, habe ich gerade festgestellt. Immerhin ein workaround.

    Einmal editiert, zuletzt von marmue ()

  • Mit den ganzen Malware Attacken und diversen Bugs...da biste mit dem Links liegen lassen garnicht so falsch, vor allem wenn geplant wäre das NAS in irgendeiner Form dem Web auszusetzen, wird es kritisch

  • Außerdem hat ein "echter" Webserver in einer VM oder einem Container den Vorteil, das er zu 99.9% nach einem Firmwareupdate noch läuft. Bei dem Webserver vom QTS würde ich die Quote deutlich geringer ansetzen.


    Gruss

  • Das Problem sehe ich weniger darin, dass der von Qnap installierte Apache fehlerhaft wäre.

    Aber der Webserver spielt eine zentrale Rolle in qts und ist genau auf die Anforderungen des Systems angepasst. Wenn du jetzt dessen Konfiguration änderst oder gar eine neue Version einspielst, riskierst du, dass deswegen qts nicht mehr läuft.


    Besser ist die Installation in einer eigenen VM. Da kannst du nach Belieben die Konfiguration anpassen und neue Versionen einspielen und testen.