Page 1 of 2

Nach Update/Upgrade: http/1.1 statt http/2

Posted: Mon 12. Feb 2024, 15:51
by blickgerecht
Hallo zusammen,

mir ist aufgefallen, dass unsere Speedtests nach dem Update auf Keyhelp 24.0 und dem Upgrade auf Debian 12 etwas langsamer sind, als davor. Bei der Suche nach der Ursache habe ich den Übertäter gefunden:

Die Seiten werden auch mit https nicht mehr mit dem "http/2"-Protokoll ausgeliefert, sondern nur mit "http/1.1". Vor dem Update und Upgrade war es definitiv http/2. Wir hatten das alles vor dem produktiven Einsatz von Keyhelp getestet und geprüft, daher bin ich mir sicher.

Ich weiß, dass man das per Apache-Anweisung forcieren kann, aber davor war es ja per default eingestellt, was auch bei https definitiv Sinn macht.

Gibt es dazu eine neue Einstellung? Habt ihr das ggf. auch beobachtet oder hat jmd. einen Tipp für mich?

Danke schonmal!

Noch ein Nachtrag: Bei einer frischen Installation von Keyhelp auf einem anderen Server wird alles per http/2 ausgeliefert, wie erwartet.

Re: Nach Update/Upgrade: http/1.1 statt http/2

Posted: Mon 12. Feb 2024, 16:00
by Florian
Hallo,

da hat sich nichts geändert.

Prüfe, dass das Modul http2 im Apache geladen ist.

Re: Nach Update/Upgrade: http/1.1 statt http/2

Posted: Mon 12. Feb 2024, 16:12
by blickgerecht
Auf den Befehl

Code: Select all

apache2ctl -M
wird in der Liste auch

Code: Select all

http2_module (shared)
angezeigt.

Ist das aussagekräftig? Wo könnte ich da noch schauen? :) Danke schonmal!

Re: Nach Update/Upgrade: http/1.1 statt http/2

Posted: Mon 12. Feb 2024, 16:16
by blickgerecht
Ah, hier taucht ein passender Fehler in /var/log/apache2/error.log auf:

Code: Select all

[Mon Feb 12 00:00:08.697082 2024] [http2:warn] [pid 988] AH10034: The mpm module (prefork.c) is not supported by mod_http2. The mpm determines how things are processed in your server. HTTP/2 has more demands in this regard and the currently selected mpm will just not do. This is an advisory warning. Your server will continue to work, but the HTTP/2 protocol will be inactive.
[Mon Feb 12 00:00:08.724252 2024] [mpm_prefork:notice] [pid 988] AH00163: Apache/2.4.57 (Debian) mod_fcgid/2.3.9 OpenSSL/3.0.11 configured -- resuming normal operations
Allerdings haben wir im Panel mpm_event ausgewählt, nicht mpm_prefork …

Noch eine Ergänzung: apachectl -V zeigt auch an, dass Prefork genutzt wird:

Code: Select all

Server MPM:     prefork
Im Panel sieht das anders aus:
Bildschirmfoto 2024-02-12 um 16.20.13.jpg
Bildschirmfoto 2024-02-12 um 16.20.13.jpg (18.15 KiB) Viewed 3261 times

Re: Nach Update/Upgrade: http/1.1 statt http/2

Posted: Mon 12. Feb 2024, 16:25
by Florian
Hallo,

dann aktiviere mpm_event oder mpm_worker nochmal manuell

Re: Nach Update/Upgrade: http/1.1 statt http/2

Posted: Mon 12. Feb 2024, 16:29
by blickgerecht
Ich hab das über das Panel probiert, allerdings hat sich da nichts geändert, prefork blieb aktiv. Anscheinend haben die Einstellungen dort gar keine Auswirkung mehr?

Über die Konsole könnte ich das noch machen, wäre das korrekt mit diesen Befehlen (um nichts zu "zerschießen")?

Code: Select all

a2dismod mpm_prefork
a2enmod mpm_event

Re: Nach Update/Upgrade: http/1.1 statt http/2

Posted: Mon 12. Feb 2024, 16:37
by Florian
ja das passt

Re: Nach Update/Upgrade: http/1.1 statt http/2

Posted: Mon 12. Feb 2024, 16:38
by blickgerecht
Da kommt direkt ein Fehler:

Code: Select all

ERROR: The following modules depend on mpm_prefork and need to be disabled first: php8.2

Re: Nach Update/Upgrade: http/1.1 statt http/2

Posted: Mon 12. Feb 2024, 16:40
by Florian
ja das sollte auch nicht aktiv sein, denn Keyhelp System nutzen ja bekanntermaßen PHP-FPM

Hier wurden entweder manuell oder durch ein Programm Änderungen vorgenommen

Re: Nach Update/Upgrade: http/1.1 statt http/2

Posted: Mon 12. Feb 2024, 16:41
by Florian
Das ist die Modulliste bei Debian 12, die standardmäßig aktiv ist

Code: Select all

# apachectl -M
Loaded Modules:
 core_module (static)
 so_module (static)
 watchdog_module (static)
 http_module (static)
 log_config_module (static)
 logio_module (static)
 version_module (static)
 unixd_module (static)
 access_compat_module (shared)
 actions_module (shared)
 alias_module (shared)
 auth_basic_module (shared)
 auth_digest_module (shared)
 authn_core_module (shared)
 authn_file_module (shared)
 authz_core_module (shared)
 authz_host_module (shared)
 authz_user_module (shared)
 autoindex_module (shared)
 cgid_module (shared)
 deflate_module (shared)
 dir_module (shared)
 env_module (shared)
 expires_module (shared)
 fcgid_module (shared)
 filter_module (shared)
 headers_module (shared)
 http2_module (shared)
 include_module (shared)
 mime_module (shared)
 mpm_event_module (shared)
 negotiation_module (shared)
 proxy_module (shared)
 proxy_fcgi_module (shared)
 proxy_http_module (shared)
 proxy_http2_module (shared)
 reqtimeout_module (shared)
 rewrite_module (shared)
 setenvif_module (shared)
 socache_shmcb_module (shared)
 ssl_module (shared)
 status_module (shared)
 suexec_module (shared)

Re: Nach Update/Upgrade: http/1.1 statt http/2

Posted: Mon 12. Feb 2024, 16:42
by blickgerecht
Ich habe keine Änderungen vorgenommen. Wie gesagt, vor dem Update auf Keyhelp 24.0 und dem anschließendem Upgrade auf Debian 12 lieft alles einwandfrei :(

Re: Nach Update/Upgrade: http/1.1 statt http/2

Posted: Mon 12. Feb 2024, 16:44
by Florian
Dann mach das PHP Modul aus. Es wird nicht gebraucht.

Re: Nach Update/Upgrade: http/1.1 statt http/2

Posted: Mon 12. Feb 2024, 16:44
by blickgerecht
Bei mir sieht das ähnlich, aber nicht gleich aus:

Code: Select all

apache2ctl -M
Loaded Modules:
 core_module (static)
 so_module (static)
 watchdog_module (static)
 http_module (static)
 log_config_module (static)
 logio_module (static)
 version_module (static)
 unixd_module (static)
 access_compat_module (shared)
 actions_module (shared)
 alias_module (shared)
 auth_basic_module (shared)
 auth_digest_module (shared)
 authn_core_module (shared)
 authn_file_module (shared)
 authz_core_module (shared)
 authz_host_module (shared)
 authz_user_module (shared)
 autoindex_module (shared)
 cgid_module (shared)
 deflate_module (shared)
 dir_module (shared)
 env_module (shared)
 expires_module (shared)
 fcgid_module (shared)
 filter_module (shared)
 headers_module (shared)
 http2_module (shared)
 include_module (shared)
 mime_module (shared)
 mpm_prefork_module (shared)
 negotiation_module (shared)
 php_module (shared)
 proxy_module (shared)
 proxy_fcgi_module (shared)
 proxy_http_module (shared)
 proxy_http2_module (shared)
 reqtimeout_module (shared)
 rewrite_module (shared)
 setenvif_module (shared)
 socache_shmcb_module (shared)
 ssl_module (shared)
 status_module (shared)
 substitute_module (shared)
 suexec_module (shared)
Das einzige, das ich mal ergänzt hatte, was das "substitute_module". Das hatte ich nicht mehr auf dem Schirm. Hat das Auswirkungen?

Re: Nach Update/Upgrade: http/1.1 statt http/2

Posted: Mon 12. Feb 2024, 16:53
by blickgerecht
So, jetzt wird per http/2 ausgeliefert und auch die Umstellung des MPM im Panel klappt.

Wieso da nun das php8.2 zu finden war – keine Ahnung.

Was mir aufgefallen war nach dem Upgrade auf Debian 12:
Alle Domains, die die Standard PHP-Version von Keyhelp in Debian 11 hatten, liefen nicht mehr. Hier musste ich manuell auf das Standard PHP 8.2 oder eben auf die vorherige Version 7.4 umstellen. Danach habe ich eine andere PHP 8.2... entfernt, die auch installiert war (nicht manuell).
Ggf. gibt es da ja einen Zusammenhang?

Vielen Dank für die großartige und ultra schnelle Hilfe! Das ist bei Keyhelp wirklich außergewöhnlich. Danke euch! :)

Re: Nach Update/Upgrade: http/1.1 statt http/2

Posted: Mon 12. Feb 2024, 16:57
by Florian
Hi,

normal wird das PHP vom Update Script im finale Step dann gradegezogen. Ggf hat da irgendwas geklemmt. Kann ich im Nachhinein aber schwer sagen.