Wenn ich den Header in der .htaccess setze, funktioniert webEdition nicht mehr.
Ich denke du wirst hier vorher ein
setzen müssen. Es ist nicht ratsam ein Header über alles zu bügeln. Ggf. muß man das auch noch auf den Pfad einschränken - aber htm/html Dateien sind in WE nicht enthalten, wenn du es also darauf abrichtest, sehe ich keinen Grund warum es nicht geht (es sei denn du hast einen Fehler und der Apache liefert aufgrund der fehlerhaften htaccess 500 zurück).
Ich habe es gerade noch getestet: die Auslieferung der Seite halbiert sich fast, wenn ich die Seite nicht dynamisch ausgebe und das finde ich für die Performance schon relevant.
Und wo glaubst du, kommt der Unterschied her? Daher, das kein PHP-Interpreter gestartet werden muß, der dann wiederum den Kode liest und parst. Je nachdem wie php angebunden ist als Apache-Modul (alt), als CGI (eher alt) oder per FPM (aktuelle Technik), vergeht der Hauptteil der Zeit im Starten des PHP-Interpreters. Nur wenn der als eigenständiger Prozess vorgehalten wird, und dann auch der php-opcache zum Einsatz kommt, können Frameworks (wie webEdition) recht Effizient laufen. Trotzdem muß der Request vom Apache Prozess noch zu FPM und wieder zurück und all das kostet Zeit. Die einzige Möglichkeit da noch ein bißchen was dynamisch zu machen, ohne die Funktionilität zu verlieren sind SSI (
https://httpd.apache.org/docs/2.4/de/howto/ssi.html).
Du kannst ja die statischen Seiten als .php speichern. Alles was darin noch steht, wird auch ausgeführt - dann siehst du ja, wie sich die Zeiten ändern. Kann man einfach per
Code: Alles auswählen
<?php
$tmp=<<<XXXX
<?php
header(...);
?>
XXXX;
echo $tmp;
?>
testen. Du siehst, machen kannst du das jetzt schon. Ich vermute das dann die Ausführungszeit ca. 80% von der von dynamischen WE ist, denn natürlich wird bei WE ein bißchen mehr gemacht als nur ein Interpreter gestartet. Aber denk dran - da ist plain php - da gibt es keine we-Tags, we-Funktionen, we-Initialisierungen - das ist wirklich das, was der Hoster liefert.