Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
uname
Beiträge: 12075
Registriert: 03.06.2008 09:33:02

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von uname » 04.01.2023 09:57:32

@Mesquita
Mir ist gerade noch was eingefallen. Ich weiß ja nicht wie wichtig die Nextcloud ist. Aber vielleicht kannst du einfach schon jetzt auf Debian Bookworm (Testing) upgraden und dabei die ganzen Fremdpakete rauswerfen. Hierbei könnte Debianapt-show-versions hilfreich sein.

Benutzeravatar
cosinus
Beiträge: 3439
Registriert: 08.02.2016 13:44:11
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Bremen

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von cosinus » 04.01.2023 09:59:25

uname hat geschrieben: ↑ zum Beitrag ↑
04.01.2023 09:57:32
@Mesquita
Mir ist gerade noch was eingefallen. Ich weiß ja nicht wie wichtig die Nextcloud ist. Aber vielleicht kannst du einfach schon jetzt auf Debian Bookworm (Testing) upgraden und dabei die ganzen Fremdpakete rauswerfen. Hierbei könnte Debianapt-show-versions hilfreich sein.
Wäre sicher eine Option. Dann muss man aber vorher die Fremdpakete rausschmeißen und das PHP 7.4 aus Bullseye wieder richtig in Betrieb nehmen oder? :)

uname
Beiträge: 12075
Registriert: 03.06.2008 09:33:02

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von uname » 04.01.2023 10:05:18

Ja. Oder einfach erst mal alles mit PHP rauswerfen und entweder noch unter Bullseye (PHP 7.4) oder erst unter Bookworm (PHP 8.1) installieren.

Ich glaube ich würde ein wenig die Befehle apt-show-versions, dpkg, cut, grep, xargs, $() usw. kombinieren, um mal ordentlich aufzuräumen.
Am besten auch gleich die ganzen Konfigurationen (rc) mit "--purge" weghauen. Natürlich die alten Konfigurationen (wo es noch lief) sichern.

Vielleicht mag jemand ein paar Befehle hier posten. ;-)

Benutzeravatar
oln
Beiträge: 487
Registriert: 05.01.2021 09:41:24

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von oln » 04.01.2023 10:35:38

Hab ich mir doch gedacht, dass dort etwas faul mit den Modulen ist. FPM funktioniert nicht mit mpm_prefork. Dort muss du mpm_event benutzen.
Gruß Ole
AbuseIPDB

Benutzeravatar
Mesquita
Beiträge: 127
Registriert: 18.10.2018 18:08:10

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von Mesquita » 04.01.2023 12:38:43

Aktualität und Sicherheit sind mir immer schon wichtig gewesen, dies entwickelte sich aus meiner Windows Zeit heraus.
Die Nextcloud gibt selber im Report den Hinweis, PHP zu aktualisieren. php8.1 wird aktuell unterstützt und deshalb ist dies mein Ziel. Der Gedanke auf Bookworm zu warten, kommt leider zu spät, hätte ich wohl gemacht.

Nun stehe ich aber mit dem gescheiterten Upgrade da und "will" eine Lösung des Problems finden.

Benutzeravatar
oln
Beiträge: 487
Registriert: 05.01.2021 09:41:24

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von oln » 04.01.2023 12:57:06

Mesquita hat geschrieben: ↑ zum Beitrag ↑
04.01.2023 12:38:43
Nun stehe ich aber mit dem gescheiterten Upgrade da und "will" eine Lösung des Problems finden.
Hast du meinen Post gelesen?
Gruß Ole
AbuseIPDB

Benutzeravatar
Mesquita
Beiträge: 127
Registriert: 18.10.2018 18:08:10

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von Mesquita » 04.01.2023 12:59:01

Danke für den Hinweis. Ich habe die Konfiguration versucht anzupassen:

Code: Alles auswählen

root@nextcloudpi:/home/pi# ls /etc/apache2/mods-enabled/
access_compat.load  alias.load	     authnz_external.load  autoindex.conf  dir.conf	headers.load  mime.load		negotiation.load  proxy.load	       rewrite.load	   ssl.conf	unique_id.load
actions.conf	    auth_basic.load  authz_core.load	   autoindex.load  dir.load	http2.conf    mpm_event.conf	proxy.conf	  proxy_wstunnel.load  setenvif.conf	   ssl.load
actions.load	    authn_core.load  authz_host.load	   deflate.conf    env.load	http2.load    mpm_event.load	proxy_fcgi.load   reqtimeout.conf      setenvif.load	   status.conf
alias.conf	    authn_file.load  authz_user.load	   deflate.load    filter.load	mime.conf     negotiation.conf	proxy_http.load   reqtimeout.load      socache_shmcb.load  status.load
root@nextcloudpi:/home/pi# systemctl restart apache2
root@nextcloudpi:/home/pi# a2enmod php8.1
Considering dependency mpm_prefork for php8.1:
Considering conflict mpm_event for mpm_prefork:
ERROR: Module mpm_event is enabled - cannot proceed due to conflicts. It needs to be disabled first!
Considering conflict mpm_worker for mpm_prefork:
ERROR: Could not enable dependency mpm_prefork for php8.1, aborting
php8.1 lässt sich nicht aktivieren
ERROR: Module mpm_event is enabled - cannot proceed due to conflicts. It needs to be disabled first!
.

Bei php8.1-fpm kommt:

Code: Alles auswählen

a2enmod php8.1-fpm
ERROR: Module php8.1-fpm does not exist!
Das Modul ist auch nicht unter
/etc/apache2/mods-available/

Benutzeravatar
oln
Beiträge: 487
Registriert: 05.01.2021 09:41:24

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von oln » 04.01.2023 13:04:54

FPM ist auch kein Modul. Sondern in conf-available zu finden. Also a2enconf und dann sollte das auch klappen. Es könnte aber auch im VHost definiert sein. Da kenne ich dein Setup nicht.
Gruß Ole
AbuseIPDB

uname
Beiträge: 12075
Registriert: 03.06.2008 09:33:02

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von uname » 04.01.2023 13:07:08

Aber das Paket Debianphp8.1-fpm gibt es schon (war laut Liste auch installiert) und starten kann man es auch laut Internet. Ich verwende es aber nicht.

Code: Alles auswählen

systemctl restart php8.1-fpm.service
Nicht wirklich gelesen aber vielleicht ist dieser Artikel interessant.

Code: Alles auswählen

a2enconf php8.1-fpm
systemctl restart apache2.service php8.1-fpm
Die Inhalte der Dateien musst du dir aufgrund des sed-Zeugs zusammendenken.
Leider dienen diese Art von Anleitungen nur zur weiteren Verdummung der Anwender.

Benutzeravatar
Mesquita
Beiträge: 127
Registriert: 18.10.2018 18:08:10

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von Mesquita » 04.01.2023 13:37:01

Das Ergebnis der Console:

Code: Alles auswählen

root@nextcloudpi:/home/pi# systemctl status php8.1-fpm.service
● php8.1-fpm.service - The PHP 8.1 FastCGI Process Manager
     Loaded: loaded (/lib/systemd/system/php8.1-fpm.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2023-01-04 13:11:14 CET; 6min ago
       Docs: man:php-fpm8.1(8)
    Process: 152466 ExecStartPost=/usr/lib/php/php-fpm-socket-helper install /run/php/php-fpm.sock /etc/php/8.1/fpm/pool.d/www.conf 81 (code=exited, status=0/SUCCESS)
   Main PID: 152463 (php-fpm8.1)
     Status: "Processes active: 0, idle: 2, Requests: 7, slow: 0, Traffic: 0req/sec"
      Tasks: 3 (limit: 8986)
        CPU: 714ms
     CGroup: /system.slice/php8.1-fpm.service
             ├─152463 php-fpm: master process (/etc/php/8.1/fpm/php-fpm.conf)
             ├─152464 php-fpm: pool www
             └─152465 php-fpm: pool www

Jan 04 13:11:14 nextcloudpi systemd[1]: Starting The PHP 8.1 FastCGI Process Manager...
Jan 04 13:11:14 nextcloudpi systemd[1]: Started The PHP 8.1 FastCGI Process Manager.
root@nextcloudpi:/home/pi# a2enconf php8.1-fpm
Conf php8.1-fpm already enabled
root@nextcloudpi:/home/pi# systemctl restart apache2.service php8.1-fpm
root@nextcloudpi:/home/pi# 
Am Aufruf der Website hat sich nichts geändert.

Hier mal aus sites-available die nextcloud.conf:

Code: Alles auswählen

/etc/apache2/sites-available/nextcloud.conf   [----]  0 L:[  1+ 0   1/ 33] *(0   /1035b) 0035 0x023                                                                                                                 [↕][✕]
### DO NOT EDIT! THIS FILE HAS BEEN AUTOMATICALLY GENERATED. CHANGES WILL BE OVERWRITTEN ###

<IfModule mod_ssl.c>
  <VirtualHost _default_:443>
    DocumentRoot /var/www/nextcloud
    ServerName xx.xx
    CustomLog /var/log/apache2/nc-access.log combined
    ErrorLog  /var/log/apache2/nc-error.log
    SSLEngine on
    SSLProxyEngine on
    SSLCertificateFile   /etc/letsencrypt/live/xx.xx/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/xx.xx/privkey.pem

    # For notify_push app in NC21
    ProxyPass /push/ws ws://127.0.0.1:7867/ws
    ProxyPass /push/ http://127.0.0.1:7867/
    ProxyPassReverse /push/ http://127.0.0.1:7867/
  </VirtualHost>

  <Directory /var/www/nextcloud/>
    Options +FollowSymlinks
    AllowOverride All
    <IfModule mod_dav.c>
      Dav off
    </IfModule>
    LimitRequestBody 0
    SSLRenegBufferSize 10486000
  </Directory>
  <IfModule mod_headers.c>
    Header always set Strict-Transport-Security "max-age=15768000; includeSubDomains"
  </IfModule>
</IfModule>
An dieser Datei habe ich keine Änderungen manuell vorgenommen. Hinter xx.xx verbirgt sich der Domainname.

Im error.log von apache2 findet man als letzte Einträge:

Code: Alles auswählen

[Wed Jan 04 13:23:04.769480 2023] [ssl:error] [pid 153881:tid 547756942400] AH02604: Unable to configure certificate localhost:4443:0 for stapling
[Wed Jan 04 13:23:04.774092 2023] [mpm_event:notice] [pid 153881:tid 547756942400] AH00489: Apache/2.4.54 (Debian) OpenSSL/1.1.1n configured -- resuming normal operations
[Wed Jan 04 13:23:04.774219 2023] [core:notice] [pid 153881:tid 547756942400] AH00094: Command line: '/usr/sbin/apache2'

uname
Beiträge: 12075
Registriert: 03.06.2008 09:33:02

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von uname » 04.01.2023 13:45:43

Vielleicht solltest du noch mal einen Schritt zurückgehen. Wird FPM wirklich von Aapche2 verwendet?

Ich habe mal diese etwas ältere Anleitung zur Umstellung des Apache2 auf FPM gefunden. Unter anderen wird erst mal phpinfo() aufgerufen um sicherzustellen, dass FPM überhaupt läuft.

Benutzeravatar
Mesquita
Beiträge: 127
Registriert: 18.10.2018 18:08:10

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von Mesquita » 04.01.2023 17:17:13

Also php läuft schon mal:

3915

Ich kontrolliere nochmals die Konfigurationsdateien von php8.1. Allerdings hatte ich alle gewünschten Parameter gesetzt.

Benutzeravatar
heisenberg
Beiträge: 3567
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von heisenberg » 04.01.2023 17:35:15

Das ist doch schon mal erhellend. PHP läuft also tatsächlich in der Version 8.1 und als FPM.

Ich empfehle erneut, Dich auf die Suche nach dem (FPM-) Log zu machen. Irgendwo müssen Fehler drin stehen.

Siehe z. B.

https://www.loggly.com/ultimate-guide/p ... ng-basics/

Auch mal das Nextcloud-Log selbst checken.

Ansonsten die Frage: Welche Nextcloud Version hast Du bei Dir am laufen? Evtl. PHP-Inkompatibilität mit Nextcloud? Nextcloud Version zu alt für PHP 8.1?
Jede Rohheit hat ihren Ursprung in einer Schwäche.

Benutzeravatar
Mesquita
Beiträge: 127
Registriert: 18.10.2018 18:08:10

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von Mesquita » 04.01.2023 17:58:33

Bei der Kontrolle der occ Scripts kommt die folgende Ausgabe:

Code: Alles auswählen

root@nextcloudpi:/home/pi# sudo -u www-data php /var/www/nextcloud/occ
An unhandled exception has been thrown:
OCP\HintException: [0]: Memcache \OC\Memcache\Redis not available for local cache (Is the matching PHP module installed and enabled?)
Das/die "matching PHP module" wird als nicht verfügbar ausgegeben.

Darauf hin habe ich die php.ini unter /etc/php8.1/fpm/ kontrolliert und festgestellt, dass keine meiner Änderungen hier enthalten waren. Die Ursache war, ich hatte diese unter /etc/php8.1/apache2/ bearbeitet. Das habe ich nachgeholt, jedoch ohne Erfolg beim Aufruf.

Benutzeravatar
heisenberg
Beiträge: 3567
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von heisenberg » 04.01.2023 18:06:47

Für die PHP-Einstellungen auf der Konsole ist /etc/php/8.1/cli/... der richtige Ort.

Für Änderungen bei FPM braucht es vermutlich einen FPM-Dienst-Neustart. Bei mod_php einen Apache Neustart.
Jede Rohheit hat ihren Ursprung in einer Schwäche.

Benutzeravatar
Mesquita
Beiträge: 127
Registriert: 18.10.2018 18:08:10

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von Mesquita » 04.01.2023 18:53:01

Auch nach einem Neustart läuft die Nextcloud nicht. Immer noch der interne Server Fehler. Ich suche in den Logs verzweifelt nach Hinweisen, finde aber nichts und ein Log zur Nextcloud ist auch nicht vorhanden. Irgendwo muss er doch protokollieren.
Heute muss ich mich erstmal abmelden, morgen gehts weiter. Hoffe, Ihr habt noch Ansatzpunkte, welche ich morgen abarbeiten kann. Meine Konzentration ist im Keller.

Benutzeravatar
heisenberg
Beiträge: 3567
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von heisenberg » 04.01.2023 19:06:00

Bei mir gibt es im Nextcloud-Verzeichnis eine data/nextcloud.log.
Jede Rohheit hat ihren Ursprung in einer Schwäche.

Benutzeravatar
Mesquita
Beiträge: 127
Registriert: 18.10.2018 18:08:10

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von Mesquita » 04.01.2023 19:29:56

Ich habe schnell man nach der nextcloud.log gesucht und fand diese auf dem USB LW unter ncdata. Leider geht aus dieser auch keine Information hervor. Bis morgen.

Benutzeravatar
heisenberg
Beiträge: 3567
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von heisenberg » 04.01.2023 23:41:49

Bei mir sind da noch einige Dateien unter /var/log die was mit php-fpm im Namen haben.
Jede Rohheit hat ihren Ursprung in einer Schwäche.

Benutzeravatar
heisenberg
Beiträge: 3567
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von heisenberg » 05.01.2023 01:12:20

Was Du auch nochmal machen kannst ist Deine php.ini Einstellungen komplett von fpm auch auf cli übertragen und dann auf der Konsole ins Nextcloud Verzeichnis wechseln und dort das ausführen:

Code: Alles auswählen

sudo -u www-data php index.php
Ich gehe davon aus, dass das auf jeden Fall mit Fehlermeldung beendet wird, aber vielleicht ist die Fehlermeldung aufschlussreich. D. h. die Meldung hier mal posten.

Und die Nextcloud Version wäre wie geschrieben hilfreich zu wissen.

Die Fehlermeldung von Dir oben heißt, dass Da das PHP-Redis-Modul fehlt. Das(Paket Name php-redis oder so) müsste evtl. noch nachinstalliert/aktiviert/konfiguriert werden.

Ansinsten: Deine PHP-Einstellungen sind jetzt aber schon aktiv? Das hast Du auch mit phpinfo(); geprüft?
Jede Rohheit hat ihren Ursprung in einer Schwäche.

Benutzeravatar
Mesquita
Beiträge: 127
Registriert: 18.10.2018 18:08:10

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von Mesquita » 05.01.2023 13:16:13

Ich stelle Dir hier mal einige Daten zusammen, welche ich über das Dashboard gesammelt habe:

Code: Alles auswählen

Operating system: Linux
Operating system name: Debian
Operating system version: 11.6
Kernel version: 5.15.76
Hardware platform: aarch64
Hostname: nextcloudpi

Code: Alles auswählen

version	25.0.2.3
Die Ausgabe von
sudo -u www-data php index.php
vor der Übertragung in die php.ini unter cli:

Code: Alles auswählen

Internal Server Error

The server encountered an internal error and was unable to complete your request.
Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report.
More details can be found in the server log.
Diese Ausgabe entspricht zu 100% der Ausgabe im Browser!

Kann man die php.ini aus fpm einfach über die php.ini in cli kopieren bzw. löschen und kopieren?

Benutzeravatar
Mesquita
Beiträge: 127
Registriert: 18.10.2018 18:08:10

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von Mesquita » 05.01.2023 14:00:17

Mittlerweile bekomme ich beim Zugriff auf die Website die Ausgabe:

Code: Alles auswählen

Access denied.
Parallel laufen auch gleichzeitig Einträge in der nc-error.log auf:

Code: Alles auswählen

[Thu Jan 05 13:59:06.916386 2023] [proxy_fcgi:error] [pid 932:tid 547668668800] [client xxx.xxx.xxx.xxx:57676] AH01071: Got error 'Access to the script '/var/www/nextcloud/login' has been denied (see security.limit_extensions)'

Benutzeravatar
heisenberg
Beiträge: 3567
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von heisenberg » 05.01.2023 15:50:11

Ok. Nextcloud ist aktuell. Da dürfte es also keine Inkompatibilitäten geben.

Da ist der Hinweis auf security.limit_extensions. Da gibt es Doku dazu.
Jede Rohheit hat ihren Ursprung in einer Schwäche.

Benutzeravatar
Mesquita
Beiträge: 127
Registriert: 18.10.2018 18:08:10

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von Mesquita » 05.01.2023 17:13:11

Hallo @heisenberg,

ich habe jetzt viel im Netz nachgelesen und einige Ansätze verfolgt, alles ohne positives Ergebnis. Alle Ansätze habe ich wieder rückgängig gemacht und stehe also immer noch am gleichen Punkt. Welche Doku meinst Du, gibt es einen Link?

Ergänzend mal eine Frage zur Literatur: Welche deutsche Literatur zu Apache2 unter Debian würdest Du empfehlen können. Da habe ich auch Nachholbedarf.

Danke.

Benutzeravatar
oln
Beiträge: 487
Registriert: 05.01.2021 09:41:24

Re: Apache2 (netxtcloud) läuft nach Umstallung von php7.4 auf 8.1 nicht

Beitrag von oln » 06.01.2023 07:50:47

Moin,
deine Fehlermeldung sagt ja aus, das etwas mit SSL nicht stimmt.
Läd der Apache mod_ssl? Dazu mal bitte ich ausgabe von apache2ctl -M .
Dann die Ausgabe von "cat /etc/apache2/ports.conf"
Stimmen die Zertifikate + Pfade?
Kannst du nur auf http zugreifen?
Leg doch mal einen neuen Vhost an und schau ob der läuft.
Wenn der läuft, dann liegt es an nextcloud und nicht an dem Apachen und FPM. Ohne den Fehler einzugrenzen wirds nix.
Gruß Ole
AbuseIPDB

Antworten