Nextcloud Problem mit PHP 7.2

Status
Für weitere Antworten geschlossen.

Freddyvdh

Benutzer
Mitglied seit
28. Dez 2015
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
Hi,

ich habe das jetzt unterstützte PHP Paket 7.2 installiert und dieses für meine nextcloud Installation (14.0.3) aktiviert.

Dann erhalte ich auf der Loginseite folgenden Fehler:
Interner Serverfehler
Der Server konnte die Anfrage nicht fertig stellen.
Sollte dies erneut auftreten, sende bitte die nachfolgenden technischen Einzelheiten an Deinen Server-Administrator.
Weitere Details können im Server-Protokoll gefunden werden

Im Log vom nextcloud finde ich folgendes:
Exception: Failed to start session

/volume1/web/nextcloud/lib/base.php - line 424:

OC\Session\Internal->__construct("oc5b1fk4k0ve")

/volume1/web/nextcloud/lib/base.php - line 656:

OC::initSession()

/volume1/web/nextcloud/lib/base.php - line 1068:

OC::init()

/volume1/web/nextcloud/index.php - line 40:

require_once("/volume1/we ... p")


Ich finde darüber leider nichts im Netz.
Wenn ich auf PHP 7.0 zurückstelle funktioniert alles einwandfrei.

Danke
Freddy
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.137
Punkte für Reaktionen
898
Punkte
424
Wie und wo hast du php72 "aktiviert"?

Wie sieht deine NC Installation aus / config?
 

Freddyvdh

Benutzer
Mitglied seit
28. Dez 2015
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
So habe ich das beim DSM konfiguriert:

01.jpg
02.png

Was meinst Du mit der NC Installation?
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.137
Punkte für Reaktionen
898
Punkte
424
Und wenn du den vHost wieder auf "Default PHP 7.0 Profile" zurück stellst geht es wieder?

Falls ja, dann musst du mal alle Erweiterungen, open_basedir, FPM und Kern Einstellungen kontrollieren, wo die zwei Profile sich unterscheiden.

Kann dir jedenfalls versichern, dass NC 14.0.6 mit PHP 7.2 mit vHost läuft.
Ich hatte mir allerdings auch schon direkt am Anfang für PHP56/70 ein NC-Profil angelegt (eben NUR für NC) und dies jetzt nur identisch auf PHP72 umgezogen.
 

Frogman

Benutzer
Mitglied seit
01. Sep 2012
Beiträge
17.485
Punkte für Reaktionen
8
Punkte
414
Schau Dir mal die open_basedir an.
 

Freddyvdh

Benutzer
Mitglied seit
28. Dez 2015
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
Ich habe zwei virtuelle Host. Bei den einem Kann ich über mydomain.de/nextcloud/ zugreifen. Diesen habe ich zum Testen aktiviert.
Der eigentliche Host ist über nextcloud.mydomain.de erreichbar. Bei diesem läuft das PHP 7.0 Profile.

Wenn ich das 7.2 Profile, welches vom ersten Host verwendet wird auf PHP 7.0 umstelle funktioniert nextcloud einwandfrei. Dh. alle Einstellungen sind identlisch.

Das open_basedir habe ich gestern noch angepasst, da ich bei '/dev/urandom' eine Fehlermeldung im Log hatte. Der Eintrag ist jetzt '/var/services/tmp:/dev/urandom '

Danke euch!
 

Freddyvdh

Benutzer
Mitglied seit
28. Dez 2015
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
Ich habe den Abend weiter das Netz durchsucht, aber leider besteht mein Problem immer noch.
Immerhin habe ich es geschafft die fehlende Indizes durch Ausführungs des Commands nachzurüsten und den memcache Eintrag hinzufügen.

Das einzige was ich noch gefunden habe ist der Eintrag aus der Logdatei, aus der ich leider nicht schlauer werde:
{"reqId":"PPXXyW0fmil412tRvXzc","level":3,"time":"2019-01-24T20:36:52+00:00","remoteAddr":"11.22.33.44","user":"--","app":"base","method":"GET","url":"\/nextcloud\/index.php\/js\/core\/merged-template-prepend.js?v=1fe24667-0","message":{"Exception":"Exception","Message":"Failed to start session","Code":0,"Trace":[{"file":"\/volume1\/web\/nextcloud\/lib\/base.php","line":424,"function":"__construct","class":"OC\\Session\\Internal","type":"->","args":["INSTANCEID"]},{"file":"\/volume1\/web\/nextcloud\/lib\/base.php","line":656,"function":"initSession","class":"OC","type":"::","args":[]},{"file":"\/volume1\/web\/nextcloud\/lib\/base.php","line":1068,"function":"init","class":"OC","type":"::","args":[]},{"file":"\/volume1\/web\/nextcloud\/index.php","line":40,"args":["\/volume1\/web\/nextcloud\/lib\/base.php"],"function":"require_once"}],"File":"\/volume1\/web\/nextcloud\/lib\/private\/Session\/Internal.php","Line":61,"CustomMessage":"--"},"userAgent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64; rv:64.0) Gecko\/20100101 Firefox\/64.0","version":"14.0.3.0"}
 

Freddyvdh

Benutzer
Mitglied seit
28. Dez 2015
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
Könnt ihr mir von eurem PHP ein Screenshot vom phpinfo erstellen?
Mich wundert, dass der Loaded Configuration File Eintrag auf (none) steht, was bei PHP 7.0 nicht der Fall ist.

Unbenannt.jpg
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.137
Punkte für Reaktionen
898
Punkte
424
Das ist aber ok.
Meine php info von meine.dynDNS.de (also die Web Station root allgemein, Apache 2.4 und selbst erstelltes PHP7.2 default profile)
Bildschirmfoto vom 2019-01-25 11-09-03.jpg

Meine php info von nextcloud.domain.de (Web Station vHost, Apache 2.4 und selbst erstelltes PHP7.2 NC-Profil)
Bildschirmfoto vom 2019-01-25 11-09-27.jpg

Persönlich würde ich vielleicht mal (halb)-tabula rasa machen und die php, Apache, Web Stations, vHosts deinstallieren und nochmal anfangen. Die Nextcloud Daten bleiben davon ja unberührt.
Oder zumindest mal die vHosts und PHP-Profile löschen und neu anlegen. Wo genau bei dir dort der Wurm versteckt ist kann ich aus den Infos leider auch nicht direkt erkennen.
 

Freddyvdh

Benutzer
Mitglied seit
28. Dez 2015
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
Hi,

ich habe die Lösung gefunden!
Und zwar habe ich myphpadmin zum web Verzeichnis hinzugefügt und dort erhält man folgende, deutlich aussagekräftigere Fehlermeldung:
Error during session start; please check your PHP and/or webserver log file and configure your PHP installation properly. Also ensure that cookies are enabled in your browser.

session_start(): open_basedir restriction in effect. File(/tmp) is not within the allowed path(s): (/volume1/web:/var/services/tmp:/dev/urandom)

session_start(): Failed to initialize storage module: files (path: )

Nachdem ich die open_dir Einstellung auf '/var/services/tmp:/dev/urandom:/tmp' erweitert habe, funktioniert auch Nextcloud mit PHP 7.2 bei mir :D
 

RelicForce

Benutzer
Mitglied seit
26. Mai 2014
Beiträge
31
Punkte für Reaktionen
1
Punkte
8
Moin zusammen,
ich tuhe mir auch gerade etwas schwer mit der PHP 7.2 Version und Nextcloud. Deine Fehlerbehebung passt bei mir aber wohl nicht so richtig.

Ich habe aktuell auf meine DS214+ eine NC 15.08 laufen, es werden mit in den Admin-Infos auch einige "optimierungen" vorgeschlagen, um diese geht es hier aber eigl gar nicht. In der Web Station habe ich neben Nginx auch Apache 2.2 und 2.4 installiert und PHP 5.6, 7.0 und 7.2 installiert. Bei PHP 7.2 kann ich mich erinnern, dass ich das PHP Profil in der Web Station selbst einrichten musste, nach einer "kopie" des Profil von 7.0 gingen dann aber eigl. die internen Apps.

Aktuell habe ich aktiv den Apache 2.4 und PHP 7.0 aktiv und zwei probleme.
1. Sobald ich PHP 7.2 einstelle, bekomme ich nur noch eine weiße Seite.
2. Der vHost klappt bei Nextclout nicht. Wenn ich diesen benutze, bekomme ich einen 403 forbidden.

Habt ihr Tipps, was ich korrigieren oder woran ich mich orientieren kann?

Vielen Dank
Michael
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.137
Punkte für Reaktionen
898
Punkte
424
Eventuell noch mehr Infos. vhost mit NC und Apache 2.4 mit php72 profile und passenden open_basedir Einstellungen geht hier ohne Probleme.
DS415+ und alle (bis auf imagick) 'Fehler' abgestellt in NC 15.08
 

RelicForce

Benutzer
Mitglied seit
26. Mai 2014
Beiträge
31
Punkte für Reaktionen
1
Punkte
8
Welche Infos fehlen dir? Ich habe alle Extensions im PHP Profil aktiviert und meine BaseDir war die gleiche wie beim PHP 7.0 Profil "/tmp:/var/services/tmp:/var/services/web:/var/services/homes", wo NC funktioniert. Ansonsten habe ich eigl nichts eingestellt oder geändert. Ich war nur verwundert, dass nach der Installation von PHP 7.2 kein Profil automatisch angelegt wurde.
 

Anhänge

  • 13_39_51-- Outlook.png
    13_39_51-- Outlook.png
    88,1 KB · Aufrufe: 48
  • 13_36_45-Outlook.png
    13_36_45-Outlook.png
    88,8 KB · Aufrufe: 46
Zuletzt bearbeitet von einem Moderator:

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.137
Punkte für Reaktionen
898
Punkte
424
In welcher config hast du nextcloud installiert, oder was ist der Ausgangszustand?
Ob ein php72 Profil vorhanden war oder nicht weiß ich nicht mehr, ich hab auf jeden Fall ein minimales (angelegt).
Auch für NC braucht man bei weitem nicht alle php Module (aber anderes Thema)

Config.php auf trusted domains, overwrite.cli etc geprüft?

Änderst du die webserver/php Einstellungen bei 'Allgemein' oder auf den vhost bezogen?
 

RelicForce

Benutzer
Mitglied seit
26. Mai 2014
Beiträge
31
Punkte für Reaktionen
1
Punkte
8
In welcher config hast du nextcloud installiert, oder was ist der Ausgangszustand?
-> Ich hatte eine OwnCloud 9 Installiert und habe diese nach und nach auf Nextcloud 15.08 upgedatet.


Ob ein php72 Profil vorhanden war oder nicht weiß ich nicht mehr, ich hab auf jeden Fall ein minimales (angelegt).
-> Das habe ich ja auch gemacht und von dem php70 profil übernommen


Auch für NC braucht man bei weitem nicht alle php Module (aber anderes Thema)
-> das dachte ich mir auch schon, wollte das aber aus Problemstelle ausschließen, daher erstmal alles.


Config.php auf trusted domains, overwrite.cli etc geprüft?
-> Ja die habe ich geprüft. Hier stecken ja eigl zwei fragen drinne.
**> Der direkte Link (https://www.myDomain.xx/nextcloud) mit dem Apache 2.4 und Php 7.0 funktioniert und ist voll Funktionsfähig
**> der vHost (nc.myDomain.cc) mit dem vHost profil Apache 2.4 und PHP 7.0 zeigt ein 403 Forbidden

**> wenn ich die WebStation auf Apache 2.4 mit PHP 7.2 umstelle, geht der direkte Link nicht mehr und ich bekomme eine weiße Seite
-> In der Config.php habe ich sowohl die Normaldomain, als auch die vHost adresse eingetragen.
-> die overwrite.cli und die weiteren Parameter habe ich nicht geändert, mit dem direktlink geht wird die seite aber erreicht (zumindest mit PHP 7.0)

****
'datadirectory' => '/volume1/web/owncloud/data',
'overwrite.cli.url' => 'http://diskstation/owncloud',
****


Änderst du die webserver/php Einstellungen bei 'Allgemein' oder auf den vhost bezogen?
-> im Defaultprofil habe ich die PHP Einstellungen gemacht.
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat