Vielen Dank für die Antwort.
Für FPM gibt es nur eine Konfigurationsdatei unter /etc/php/7.0/fpm/php.ini, diese hat ziemlich die Standard-Werte zum Session-Management:
session.gc_maxlifetime = 1440
session.save_handler = files
session.save_path = /var/lib/php/sessions
session.use_cookies = 1
session.use_only_cookies = 1
session.name = PHPSESSID
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_path = /
session.cookie_domain =
session.cookie_httponly =
session.serialize_handler = php
session.gc_probability = 1
session.gc_divisor = 1000
session.bug_compat_42 = Off
session.bug_compat_warn = Off
session.referer_check =
session.cache_limiter = nocache
session.cache_expire = 180
session.use_trans_sid = 0
session.hash_function = 0
session.hash_bits_per_character = 5
Also Standard-Zeit, Verzeichnis existiert, mehrere GB freier Platz und die Session-Datei wird auch darin angelegt - eine passende Datei zu meiner Session-ID aus dem Browser hab ich da gefunden.
Eine Sache die ich jetzt beim Test in Chromium-basiertem Browser gesehen habe ist folgendes:
- Habe mich eingelogt, etliche Sekunden gewartet (alles ok) und auf Adressbuch geklickt (war im Kalender). Hier wurde ich sofort wieder ausgeloggt.
Wenn ich mir im Netzwerk-Tab die einzelnen Requests anschaue sehe ich viele wo das Cookie mitgesendet wird und auf einmal kommt ein Redirect zur login.php, die dann alle Session-Cookies löscht. Danach ist der Cookie-Header immer leer und ich sehe die Loginseite geladen…
Das einzige was mir hier auffällt, ist das der Browser die meiste Zeit IPv6 Requests sendet, aber der eine Request, der via HTTP302 zur Login-Seite redirected wird, IPv4 nutzt. Kann es sein, das die Session an die IP gebunden ist und PHP nicht mit mit dem automatischen Wechsel des Browser zwischen IPv4 und IPv6 klar kommt?
Hier die Request in Frage (gekürzter Auszug aus dem Browser Network Tab:
Request URL: https://domain/egw/index.php?menuaction=addressbook.addressbook_ui.photo&contact_id=159&etag=5
Request Method: GET
Status Code: 302 Found
Remote Address: [2a01:4f8:200:502d::x]:443
Response Headers
...
Location: /egw/addressbook/templates/pixelegg/images/photo.png
Request Headers
...
Cookie: eGW_cookie_test=enabled; last_loginid=stefan; last_domain=domain; sessionid=3a888vpaja5l315b25cimaiml2; kp3=Tss3s956hqcM7pMuqWwS96Zv; domain=domain
Request URL: https://domain/egw/index.php?menuaction=addressbook.addressbook_ui.photo&contact_id=99&etag=4
Request Method: GET
Status Code: 302 Found
Remote Address: 148.251.249.x:443
Response Headers
...
Location: https://domain/egw/login.php?cd=10&phpgw_forward=%252Findex.php%253Fmenuaction%253Daddressbook.addressbook_ui.photo%26contact_id%253D99%26etag%253D4
Request Headers
...
Cookie: eGW_cookie_test=enabled; last_loginid=stefan; last_domain=domain; sessionid=3a888vpaja5l315b25cimaiml2; kp3=Tss3s956hqcM7pMuqWwS96Zv; domain=domain
Request URL: https://domain/egw/login.php?cd=10&phpgw_forward=%252Findex.php%253Fmenuaction%253Daddressbook.addressbook_ui.photo%26contact_id%253D99%26etag%253D4
Request Method: GET
Status Code: 200 OK
Remote Address: 148.251.249.x:443
Response Headers
...
Content-Security-Policy: script-src 'self' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; connect-src 'self' ; frame-src 'self'
Set-Cookie: sessionid=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; path=/; domain=domain; secure; HttpOnly
Set-Cookie: kp3=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; path=/; domain=domain; secure; HttpOnly
Set-Cookie: domain=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0; path=/; domain=domain; secure; HttpOnly
Request Headers
...
Cookie: eGW_cookie_test=enabled; last_loginid=stefan; last_domain=domain; sessionid=3a888vpaja5l315b25cimaiml2; kp3=Tss3s956hqcM7pMuqWwS96Zv; domain=domain
Dann etwas später (alle diese Requests sind ja quasi kurz nacheinander wenn er das Adressbuch mit allen Einträgen anzeigen will - ist das Session-Cookie weg beim Request und noch eine kurze Zeit später wird dann auch die Loginseite angezeigt
Request URL: https://domain/egw/index.php?menuaction=addressbook.addressbook_ui.photo&contact_id=56&etag=5
Request Method: GET
Status Code: 302 Found
Remote Address: [2a01:4f8:200:502d::x]:443
Response Headers
...
Location: https://domain/egw/login.php?phpgw_forward=%252Findex.php%253Fmenuaction%253Daddressbook.addressbook_ui.photo%26contact_id%253D56%26etag%253D5
Request Headers
...
Cookie: eGW_cookie_test=enabled; last_loginid=stefan; last_domain=domain