Fehlermeldung kommt immer wieder

BS Nextcloudpi 31.0.6.

Ich erhalte folgende Fehlermeldung

An exception occured while running the setup check: InvalidArgumentException: URL is missing scheme or host in /var/www/nextcloud/lib/public/SetupCheck/CheckServerResponseTrait.php:154 Stack trace: #0 /var/www/nextcloud/lib/public/SetupCheck/CheckServerResponseTrait.php(84): OCA\Settings\SetupChecks\WellKnownUrls->normalizeUrl() #1 /var/www/nextcloud/lib/public/SetupCheck/CheckServerResponseTrait.php(116): OCA\Settings\SetupChecks\WellKnownUrls->getTestUrls() #2 /var/www/nextcloud/apps/settings/lib/SetupChecks/WellKnownUrls.php(57): OCA\Settings\SetupChecks\WellKnownUrls->runRequest() #3 /var/www/nextcloud/lib/private/SetupCheck/SetupCheckManager.php(34): OCA\Settings\SetupChecks\WellKnownUrls->run() #4 /var/www/nextcloud/apps/settings/lib/Controller/CheckSetupController.php(134): OC\SetupCheck\SetupCheckManager->runAll() #5 /var/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php(200): OCA\Settings\Controller\CheckSetupController->check() #6 /var/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php(114): OC\AppFramework\Http\Dispatcher->executeController() #7 /var/www/nextcloud/lib/private/AppFramework/App.php(161): OC\AppFramework\Http\Dispatcher->dispatch() #8 /var/www/nextcloud/lib/private/Route/Router.php(307): OC\AppFramework\App::main() #9 /var/www/nextcloud/lib/base.php(1040): OC\Route\Router->match() #10 /var/www/nextcloud/index.php(24): OC::handleRequest() #11 {main}

Dank dem Forum weiß ich, dass die [ ] in der config.php für die IP6 fehlen, also geändert.
Nach 2 oder 3 neustarts, ist es wieder genauso die Klammern fehlen, wenn ich die IP6 lösche wird sie wieder eingetragen.
Wie kann ich die IP6 ständig entfernen (wird nicht gebraucht) oder dafür sorgen, dass die Klammern bleiben

1 Like

Stell mal klar was du m einst. Die IP6 soll was genau sein?
Die IPv6-Adresse des NC-Servers in der config.php? Im Moment nur 'ne Mutmaßung.

Dann würde die bei dir im

  array (
  ),

stehen. Wenn ja kann das auch so aussehen:

  array (
    0 => 'nextcloud.abcdefghijklm.de',
    1 => '192.168.0.2',
  ),

Dann gäbe es dort eben keine IPv6-Adresse mehr.

Genau wie du schreibst, wenn das jetzt 3 => ‘[xxxx]’ in den Klammern ist, ist die Fehlermeldung weg. IP6 benötige ich nicht.

Ja, aber dann lass die IPv6-Adresse doch einfach weg.
Muss man doch nicht angeben und vor allem macht die Angabe einer IPv6-Adresse bei allen Installationen hinter einem Anschluss mit Zwangstrennung und dadurch bedingter Neuvergabe des IPv6-Präfix auch gar keinen Sinn. Denn dann gibt es ja regelmäßig einen neuen IPv6-Präfix und damit eine neue IPv6-Adresse.

Habe schon gelöscht, wird automatisch wieder eingetragen.

Wenn der PI nur eine IPv4, aber keine IPv6-Adresse hat, könnte der automatische Eintrag unterbleiben (nur eine Vermutung).
IP-Adressen sollten auf dem PI fest und nicht dynamisch (via DHCP-Server des LAN) vergeben sein.

die IP ist in der Fritte festgelegt, das sie nicht anderweitig vergeben wird.

Dann hast du keine normale Installation der NC, sondern irgendwas spezielles mit weiteren Configs die immer wieder in die config.php reinschreiben. Z.B. NextcloudPI.

Hierzu gibt es bereits eine noch offene Problemmeldung auf GitHub:

@adelaar

@zomtec2311
Danke

Und die DHCP-vergebene IPv6-Adresse wird ständig nachgetragen, weil auf dem PI der DHCP-Client aktiv ist. Darum mein Vorschlag, IP-Adressen fest eintragen bzw. IPv6 auf dem PI deaktivieren.

IP6 habe ich jetzt in der FritzBox deaktiviert, jetzt sieht es besser aus. Die Fehlermeldung ist erst einmal weg.

Das vermute ich auch so, ist aber nicht normal. In meine config.php wird KEINE Ipv6-Adresse permanent von irgendedeinem im Hintergrund laufenden Script nachgetragenm obwohl auf meinem Debian12 Server in der /etc/network/interfaces auch

iface enp1s0 inet6 dhcp

steht. Also mein Debian12 Server per dhcpv6 eine IPv6-Adresse zugewiesen bekommt. Dieses automatische Nachtragen scheint also einer Besonderheit bei Nextcloudpi zu sein. Etwas das eindeutig nicht passiert, wenn man sich ganz normal per

wget https://download.nextcloud.com/server/releases/latest.tar.bz2
tar -xjf latest.tar.bz2 -C /var/www

die aktuelle Nextcloud zieht und in /var/www entpackt. Mein array-Eintrag sieht so

array (
    0 => 'nextcloud.abcdefghijklm.de',
    1 => '192.168.0.2',
  ),

aus, also ohne IPv6 obwohl ich ja via /etc/network/interfaces eine IPv6-Adresse per dhcpv6 beziehe.

Wie ich bereits zuvor such schon erwähnt habe, macht ein Eintrag der IPv6-Adresse auch gar keinen Sinn, denn ich bin bei einem ISP mit Zwangstrennung in jeder Nacht. Dadurch ändert sich der IPv6-Prefix und der Debian-Server mit der NC drauf hat jeden Morgen eine neue IPv6-Adresse. Daher funktioniert der Zugriff auf die Nextcloud per IPv6 nur über den FQDN (im Beispiel also nextcloud.abcdefghijklm.de. Mehr ist auch nicht notwendig.

1 Like

Die Fehlermeldung weist auf ein Problem mit der fehlenden URL-Struktur in der Konfiguration hin. Wenn die IPv6-Adresse in der config.php ohne eckige Klammern ([ ]) steht, interpretiert Nextcloud sie falsch. Da die Adresse beim Neustart automatisch ohne Klammern neu eingetragen wird, solltest du versuchen, sie in der config.php dauerhaft zu entfernen, indem du overwrite.cli.url korrekt mit IPv4 oder einer vollständigen Domain einträgst. Alternativ kannst du IPv6 auf deinem System oder Webserver (Apache/Nginx) komplett deaktivieren, wenn sie nicht benötigt wird. Das verhindert die automatische Rückschreibung.

Hallo @hackito, weißt du auch was diese automatische Rückschreibung verursacht? Also welches Script, etc.? Da ich keine Nextcloudpi verwende und auch ganz anders installiert habe, nicht einmal einen Pi besitze, kann ich das nicht nachvollziehen.

Wie ich zuvor schrieb gibt es diese automatische Rückschreibung bei meiner Art der Installation schlicht nicht.

Im Script nextcloud-domain.sh gibt es eine Zeile, die das bewirkt:

/usr/local/bin/nextcloud-domain.sh: [[ “$pub_ip” != “” ]] && ncc config:system:set trusted_domains 11 --value=“$pub_ip”

Als Test kann man sich die IP Adressen holen und dann die ipv6 richtig setzten. Damit wird gleichzeitig die entsprechende IP in config.php geändert.

sudo ncc config:system:get trusted_domains
sudo ncc config:system:set trusted_domains 11 --value=“[<eigene ipv6 einsetzen]”

curl -m4 icanhazip.com
im Shellscript liefert anscheinend eine ipv6 falls ipv6 konfiguriert ist.

@kjathome danke für deine Antwort, aber ich konnte das Problem durch abschalten der IP6 lösen, viel mehr nerft mich, dieses Problem,
https://help.nextcloud.com/t/redisexception-redis-server-var-run-redis-redis-sock-0-went-away/228172
hast du evtl. eine Lösung für mich

Andreas

Hallo @Andreas_der_erste,

nicht böse werden, aber man merkt dass du nicht viel Ahnung hast.

Um IPv6 für die NC los zu werden, muss man doch nicht gleich das ganze lokale Netzwerk kastrieren, indem man in der Fritte den IPv6-Support abstellt und somit gleich für ALLE Clients im LAN deaktiviert. Stattdessen hättest du im Raspberry Pi (sofern der als Server läuft, also ohne Network Manager) doch einfach nur die /etc/network/interfaces mit einem Texteditor bearbeiten und dort nur für den PI IPv6 deaktivieren müssen. Hat der Pi einen graphischen Desktop (x-Server), dann eben im Network Manager.

Zum anderen, nachdem @kjathome nun den Hinweis auf die nextcloud-domain.sh gegeben hat, könnte man doch auch einfach die entsprechende Zeile in der nextcloud-domain.sh auskommentieren.

IPv6 komplett in der Fritte zu deaktivieren ist jedenfalls die denkbar schlechteste Lösung. Wirst du negativ bemerken, so bald du mal auf IPv6-Only Ressourcen zugreifen willst, die hinter DS-Lite- oder CG-NAT-Anschlüssen sind.