Redis aktiviert und kein Zugriff via web mehr möglich

Hallo zusammen,

unsere Cloud soll spĂ€ter nicht viel können und dient “nur” als Datengrab fĂŒr die Kommunikation von Intern mit Kunden/Dienstleistern/etc.pp.

Trotzdem habe ich Redis installiert:
https://www.c-rieger.de/nextcloud-installationsanleitung/#c04

Sobald ich aber in der conifg.php die Daten aus der Doku oder Nextcloud Doku hinterlege, ist meine Cloud tot
 zumindest was den HTTPS Access angeht


Also entweder:

'memcache.locking' => '\OC\Memcache\Redis',
'memcache.local' => '\OC\Memcache\APCu',
'memcache.distributed' => '\OC\Memcache\Redis',
'redis' => [
'host' => '/run/redis/redis-server.sock',
'port' => 0,
],

oder:

'memcache.local' => '\OC\Memcache\APCu',
'memcache.distributed' => '\OC\Memcache\Redis',
'memcache.locking' => '\OC\Memcache\Redis',
'redis' => [
     'host' => 'redis-host.example.com',
     'port' => 6379,
],

(hier habe ich natĂŒrlich redis-host.example.com durch meine url getauscht)

Das Ergebnis ist immer das gleiche:

Internal Server Error

jemand ne idee?

Der Server lÀuft bei einem Dienstleister von uns, ist virtuell & root ist vorhanden.
System ist Debian 11, Maria DB & NC Hub II (23.0.0)

Ein “Reboot” tut immer gut :wink:

Ok. mal Spaß bei Seite
 Neustart des Servers ist schon wichtig.

Was sagt sudo service redis-server status

Die Frage ist, ob du Redis wirklich brauchst. Am Ende ist es nur eine zusĂ€tzliche Fehlerquelle auch im Betrieb. Im Link unten findest du etwas ĂŒber Caching und auch ĂŒber die Konfiguration von Redis. Aber ich denke den Link kennst du schon.

https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/caching_configuration.html

1 Like

Hi @Kepan0

Der Pfad zum redis-server.sock scheint bei dir nicht zu stimmen. Bei mir steht da folgendes: 'host' => '/var/run/redis/redis-server.sock',.

Hier meine vollstÀndige funktionierende Config:

'memcache.local' => '\OC\Memcache\APCu',
'memcache.locking' => '\OC\Memcache\Redis',
'memcache.distributed' => '\OC\Memcache\Redis',
'redis' =>
array (
'host' => '/var/run/redis/redis-server.sock',
'port' => 0,
'timeout' => 1.5,
),

Redis muss natĂŒrlich auch laufen. Man kann sich mal den Inhalt der genannten Datei anzeigen lassen. Dort sollte ein Inhalt stehen. Wahrscheinlich die Prozess-ID. Ich nutze kein Redis.

cat /run/redis/redis-server.sock
cat /var/run/redis/redis-server.sock

Man kann die Datei auch ermitteln. Einfach lsof installieren und dann

lsof |grep redis

1 Like

/var/run/redis/redis-server.sock ist der korrekte Pfad. :slight_smile:

lsof | grep redis-server.sock
redis-ser   873                            redis    6u     unix 0xffff9676eb175800       0t0      19449 /var/run/redis/redis-server.sock type=STREAM
redis-ser   873   922 redis-ser            redis    6u     unix 0xffff9676eb175800       0t0      19449 /var/run/redis/redis-server.sock type=STREAM
redis-ser   873   923 redis-ser            redis    6u     unix 0xffff9676eb175800       0t0      19449 /var/run/redis/redis-server.sock type=STREAM
redis-ser   873   924 redis-ser            redis    6u     unix 0xffff9676eb175800       0t0      19449 /var/run/redis/redis-server.sock type=STREAM
1 Like

Die Statusausgabe ist wohl nicht Wichtig


und hau mal unter
‘host’ => ‘127.0.0.1’,
rein


Wenn er die Anleitung von C. Rieger verwendet hat, hat er Redis so konfiguriert, dass es auf einem Unix Socket anstatt auf einem TCP Socket lÀuft. Dann muss er dort /var/run/redis/redis-server.sock angeben.

Redis Config:
https://www.c-rieger.de/nextcloud-installationsanleitung/#c04

Config.php, die weiter unten in der Anleitung verwendet wird:
https://github.com/criegerde/nextcloud/blob/main/var/www/nextcloud/config/config.php

Tja ,:wink: es ist nicht alles Gold was glÀnzt.

Warum? Unix Socket ist performanter und theoretisch auch sicherer
 Egal, das mĂŒssen wir nicht ausdiskutieren. Fact ist, dass hier offenbar ein kleiner Fehler gemacht wurde, weil der OP warscheinlich Informationen aus verschiedenen Quellen vermischt hat. In der Nextcloud Dokumentation steht nĂ€mlich z.B. /run/redis/redis-server.sock anstatt var/run/redis/redis-server.sock. Die Verwirrung wird sicher nicht kleiner, wenn du ohne Kontext, und ohne dass der OP Feedback gegeben hat, einfach mal 127.0.0.1 in die Runde reinwirfst. :wink:

Schon mal die config runtergeladen und angesehen die in der “Anleitung” angegeben ist? :slight_smile:

Ja


 'redis' => 
  array (
    'host' => '/var/run/redis/redis-server.sock',
    'port' => 0,
    'timeout' => 0.0,
    'dbindex' => 0,
),

Mann mann :stuck_out_tongue: github: nextcloud/redis.conf at main · criegerde/nextcloud · GitHub

Dann schau halt hier Nextcloud Installationsanleitung (Nextcloud 23 = Nextcloud Hub II) - Carsten Rieger IT-Services

weiter unten, die config.php

Ich habe nur den Github Link gepostet, dass du nicht scrollen musst, weil man nicht direkt dorthin verlinken kann. Den Link in der Anleitung, direkt ĂŒberhalb der config.php in der auch var/run/redis/redis-server.sock steht.

Wenn er die Anleitung gefolgt ist steht unten

Passen Sie die Rediskonfiguration durch das Sichern und Anpassen der Konfiguration mittels AusfĂŒhren der nachfolgenden Befehle an:

github: nextcloud/redis.conf at main · criegerde/nextcloud · GitHub

Jetzt schau dir die Config an die da hochgeladen ist


unixsocket /var/run/redis/redis-server.sock

unixsocketperm 770

port 0

Genau das was mit diesen sed Befehlen einkommentiert und angepasst wird
 Nextcloud Installationsanleitung (Nextcloud 23 = Nextcloud Hub II) - Carsten Rieger IT-Services

Screenshot 2022-01-28 111513

Ja und jetzt scrollst du noch ein bisschen weiter runter.

# Accept connections on the specified port, default is 6379 (IANA #815344).

# If port 0 is specified Redis will not listen on a TCP socket.

Nur mit passwort :wink:

Die einfachste Lösung um zu sehen wo das Teil rennt ist in der Shell (Konsole)
sudo redis-cli
einzugeben


Und ich wĂŒrd mein Arsch verwetten wenn da nicht der localhost steht :wink: