NC bzw apache2 läuft nach Umstellung auf PHP8.1 nicht

Hallo User,

ich bin am Verzweifeln. Meine NC lief lange Zeit ohne Probleme, nun stand aber die Umstellung von PHP 7.4 auf PHP8.x an. Nach einer Anleitung habe ich PHP8.1 installiert und konfiguriert. Auf der Console kann ich mittels update-alternatives --config php

  Auswahl      Pfad             Priorität Status
------------------------------------------------------------
  0            /usr/bin/php8.2   82        automatischer Modus
  1            /usr/bin/php7.4   74        manueller Modus
* 2            /usr/bin/php8.1   81        manueller Modus
  3            /usr/bin/php8.2   82        manueller Modus

problemlos auf 8.1 umstellen, was mir php -v auch ausgibt:

HP 8.1.13 (cli) (built: Nov 26 2022 14:27:02) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.13, Copyright (c) Zend Technologies
    with Zend OPcache v8.1.13, Copyright (c), by Zend Technologies

Damit arbeitet der Apache2 aber noch nicht mit php8.1, sodass ich mir die verfügbaren Module vom Apache2 habe auflisten lassen. Darin taucht keine php8.1.conf/load auf, nur die von php7.4 und php8.2. Wo ist php8.1? In den aktiven Modulen findet man immer noch php7.4.conf/load. Eine Umstellung auf die Module php8.1 kann ich also mittels a2dismod und a2enmod nicht machen.

Mir ist auch aufgefallen, dass im Verzeichnis unter /etc/php/8.1/ kein apache2 Verzeichnis so wie bei 7.4 und 8.2 ist.

Die Installation habe ich über die Repository packages.sury.org/php/ bullseye mainvorgenommen. Erstmal update und upgrade, wonach php8.2 augetaucht ist. Nachträglich habe ich die Module von php7.4 mir auflisten lassen apt list --installed | grep php7.4 und alle entsprechenden Module zum php8.1 manuell nachinstalliert.

Jetzt kann ich egal welche php Version wählen, es startet der Apache2 nicht. Auch wenn ich alles zurück auf php7.4 stelle, startet der Webserver nicht.

Was habe ich falsch gemacht und wie komme ich zu php8.1?

Mittels NC komme ich noch ins Dashboard. Da ist nichts Auffälliges. Der Aufruf der nc bringt nur:

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.

Im Server Log findet man:

[Tue Jan 03 13:19:03.723429 2023] [php7:error] [pid 1031] [client xxx.xxx.xxx.xxx:36482] PHP Fatal error: Uncaught OCP\HintException: [0]: Memcache \OC\Memcache\Redis not available for local cache (Is the matching PHP module installed and enabled?)\n\n thrown in /var/www/nextcloud/lib/private/Memcache/Factory.php on line 90

Hi, I don’t understand what you write because I don’t know German but I think we have the same problems looking because logs :wink:

@dtb - it seems as if someone thinks you guys might have the same problem… it would be nice if you could direct that guy into the direction that brought the solution for you. Even if it might not be relevant or connected to NC directly.

Thanks alot

Ich habe mittlerweile viele Tage an Zeit investiert und komme nicht weiter. Im nc-error.log steht nur der Fehler:

[Sat Jan 07 08:55:22.163359 2023] [proxy_fcgi:error] [pid 12079:tid 547443573120] [client xxx.xxx.xxx.xxx:32976] AH01071: Got error 'Access to the script '/var/www/nextcloud/login' has been denied (see security.limit_extensions

Auch nach langen Recherchen und einigen Ansatzpunkten zu “security.limit_extensions”, hat sich am System noch nichts Positives ergeben. Ich erhalte weiterhin eine helle Website mit dem Hinweis “Access denied”. Parallel habe ich ein neue info.php in das Verzeichnis /var/www/nextcloud gelegt und kann diese problemlos ausführen. Bedeutet für mich, der apache2 kann nicht die Ursache sein.

Hat jemand eine Idee?

Hallo,

schau in der /etc/-Pfad. Dort musste ich für php8.1 die Einstellungen anpassen, da Ubuntu den Pfad von php in php8.1 für die Einstellungen geändert hat.
Btw, hast Du geprüft das nur der apache läuft und nginx aus ist? Bei einem der letzten Systemupdates hat der Updater nginx mit installiert. Nach einem Reboot muss ich jetzt den Dienst nginx beenden und apache neustarten. Muss mich demnächst mal damit beschäftigen und heile machen.
Grüße Chris

Hallo Chris, ich habe 7 Tage versucht die Ursache zu finden, ergebnislos. Auf einen Tipp hin, habe ich php8.0 installiert und 8.1 entfernt. 8.0 lief sofort.

Nginx war nicht auf dem Server. In den relevanten ini Dateien wurden von mir auchvdie Pfade kontrolliert.

Ich werde erstmal mit 8.0 arbeiten und plane bei Bookwurm ev einen neuen Raspi.

Thomas

interessant wäre hier dann noch die Info, auf welchem System du das ganze laufen lässt, denn eigentlich habe ich noch nicht gehört, dass php 8.1 mit NC Probleme macht.
Könnte mir eher vorstellen, dass besagte Probs in Abhängigkeit deines Betriebssystems entstehen.

Hallo @JimmyKater,

meine NC läuft aktuell auf einem Raspberry 4 unter Debian (Bullseye) mit dem Apache2.

VG Thomas

gibt es nicht ein speziell auf Raspis angepasstes Debian? Und dieses hast du installiert…? Hmmm… Von einer generellen Unverträglichkeit von Php 8.1 mit Deb11 habe ich noch nichts gehört. Ggf war auch nur die INstallatrion aus welchen Gründen auch immer nicht vollständig

Aber Problem gelöst! Prima!

Die Installation ist ein extra nextcloudpi Image für den Raspi. Aber auch dazu war 8.1 freigegeben und die Installation unter Debian mit dem Apache2 und php ist meiner Meinung nach Standard.
Es gibt diesbezüglich eigentlich keine Unverträglichkeit, anscheinend nur bei mir und einem Tippgeber mit dem gleichen Effekt. Nach Umstellung auf 8.0 lief alles sofort.

Nun will ich 2FA noch einrichten, dazu habe ich einen extra Thread geschrieben.

Einen schönen Start in die Woche. Thomas

1 Like